Function at 0x422ab0
Capabilities:
Encode data using xor

Disassembly:
push ebp
push ebx
push edi
push esi
mov eax, 0x21e4
call fcn.00407ea0
mov dword [esp + 0x11e4], 0x87d485d8
mov dword [esp + 0x11e8], 0x8bcd89cd
mov dword [esp + 0x11ec], 0x8fdd8dc5
mov dword [esp + 0x11f0], 0x93c091c4
mov dword [esp + 0x11f4], 0x97ca95cd
mov dword [esp + 0x11f8], 0x9bc999cd
mov dword [esp + 0x11fc], 0x9fcc9dd9
mov word [esp + 0x1200], 0xe1e0
xor eax, eax
xor ecx, ecx
nop
nop
nop
nop
nop
nop
nop
movzx esi, byte [esp + ecx + 0x11e4]
mov edx, esi
not edx
mov ebx, eax
and ebx, 8
mov edi, ecx
xor edi, 0x627eaca4
add edi, ebx
mov ebx, edi
not ebx
and edx, 0x75
mov ebp, esi
xor ebp, 0x6185575
or esi, 0x8a
and esi, ebp
mov ebp, edi
xor ebp, 0x75
or edi, 0x8a
and edi, ebp
add edx, esi
and esi, 0x75
sub edx, esi
and ebx, 0x75
or ebx, edi
xor ebx, edx
add bl, 0xe0
mov byte [esp + ecx + 0x11e4], bl
inc ecx
add eax, 2
cmp ecx, 0x1e
jne case.default.0x422a15
lea eax, [esp + 0x20]
lea ecx, [esp + 0x11e4]
push 0
push 0
push 0x20019
push eax
mov dword [esp + 0x10], ecx
push ecx
call fcn.0043c440
add esp, 0x14
shr eax, 0x1f
jmp dword [eax*4 + 0x443198]
lea esi, [esp + 0x5c]
jmp dword [0x4431a4]
lea eax, [esp + 0x1c]
push 0
push 0
push 0
push 0
push esi
push eax
push 0
push 0
push dword [esp + 0x40]
call fcn.0043c7f0
add esp, 0x24
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
lea eax, [esp + 0x1c]
push 0
push 0
push 0
push 0
push esi
push eax
push 0
push 0
push dword [esp + 0x40]
call fcn.0043c7f0
add esp, 0x24
jmp dword [0x4431a8]
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x4431b0]
xor eax, eax
jmp 0x424109
xor ecx, ecx
xor eax, eax
mov dword [esp + 8], 0
cmp ecx, dword [esp + 0x1c]
setb al
xor edi, edi
jmp dword [eax*4 + 0x4431c8]
inc edi
xor eax, eax
cmp edi, dword [esp + 0x1c]
setb al
jmp dword [eax*4 + 0x4431c8]
mov esi, dword [esp + 0x5c]
mov eax, esi
inc eax
lea eax, [esi + esi + 2]
jns 0x422ad3
mov eax, 0xffffffff
push eax
call fcn.00407fc0
add esp, 4
mov dword [esp + 0x58], esi
mov esi, eax
lea eax, [esp + 0x58]
push eax
push esi
push edi
push dword [esp + 0x2c]
call fcn.0043c550
add esp, 0x10
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x4431d8]
jmp dword [0x443278]
lea eax, [esp + 0x38]
push dword [esp + 0x20]
push 0
push 0x20019
push eax
push esi
call fcn.0043c440
add esp, 0x14
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x4431e0]
mov dword [esp + 0x48], esi
mov dword [esp + 0x4c], edi
mov dword [esp + 0x76], 0x9139af63
mov dword [esp + 0x7a], 0x95069331
mov dword [esp + 0x7e], 0x990b9739
mov dword [esp + 0x82], 0x9d3a9b35
mov dword [esp + 0x86], 0x813c9f0a
mov dword [esp + 0x8a], 0x852d8335
mov dword [esp + 0x8e], 0x892c8728
mov dword [esp + 0x92], 0x8d1b8b25
mov dword [esp + 0x96], 0x71908f1d
mov dword [esp + 0x9a], 0x75d173bf
mov dword [esp + 0x9e], 0x79eb77e5
mov dword [esp + 0xa2], 0x7ddb7bdb
mov dword [esp + 0xa6], 0x61ce7fd7
mov dword [esp + 0xaa], 0x658463c5
mov dword [esp + 0xae], 0x69fd67d5
mov dword [esp + 0xb2], 0x6dff6bc8
mov dword [esp + 0xb6], 0x51c36ff7
mov dword [esp + 0xba], 0x55f153c6
mov dword [esp + 0xbe], 0x59e457fb
mov dword [esp + 0xc2], 0x5dce5bea
mov dword [esp + 0xc6], 0x41e65ff1
mov dword [esp + 0xca], 0x45e843eb
mov dword [esp + 0xce], 0x49db47e3
mov dword [esp + 0xd2], 0x4d954bf6
mov dword [esp + 0xd6], 0x31e74f9d
mov dword [esp + 0xda], 0x35f733e7
mov dword [esp + 0xde], 0x39fe37f0
mov dword [esp + 0xe2], 0x3de83bea
mov dword [esp + 0xe6], 0x21f33fef
mov dword [esp + 0xea], 0x25f523f3
mov dword [esp + 0xee], 0x298c27f7
mov dword [esp + 0xf2], 0x2dee2bf9
mov dword [esp + 0xf6], 0x11c82ff6
mov dword [esp + 0xfa], 0x15c413d3
mov dword [esp + 0xfe], 0x19c917c6
mov dword [esp + 0x102], 0x1dc81bca
mov dword [esp + 0x106], 0x1d21fdc
mov dword [esp + 0x10a], 0x5d203c3
mov dword [esp + 0x10e], 0x9df07d0
mov dword [esp + 0x112], 0xdb00bdc
mov word [esp + 0x116], 0xf0e
mov eax, 0x9b8d9e5e
mov ecx, 0xa1
movzx edx, byte [esp + eax + 0x64726218]
lea esi, [edx + edx]
not esi
add esi, edx
and esi, eax
and edx, ecx
or edx, esi
add edx, 0x23930d0f
mov esi, edx
xor esi, 0x58
and edx, 0x27
add edx, edx
sub edx, esi
add dl, 0x59
mov byte [esp + eax + 0x64726218], dl
inc eax
dec ecx
cmp eax, 0x9b8d9f00
jne 0x422d00
lea edi, [esp + 0x918]
lea eax, [esp + 0x76]
mov ecx, 0x28
xchg esi, eax
rep movsd dword es:[edi], dword [esi]
xchg esi, eax
lea eax, [esp + 0x116]
lea edi, [esp + 0x9b8]
mov ecx, 1
xchg esi, eax
rep movsw word es:[edi], word [esi]
xchg esi, eax
mov dword [esp + 0x76], 0xd64cd42e
mov dword [esp + 0x7a], 0xca5bc834
mov dword [esp + 0x7e], 0xce5ecc54
mov dword [esp + 0x82], 0xc227c050
mov dword [esp + 0x86], 0xc629c457
mov dword [esp + 0x8a], 0xfa60f830
mov dword [esp + 0x8e], 0xfe19fc65
mov dword [esp + 0x92], 0xf266f060
mov dword [esp + 0x96], 0xf6d5f460
mov dword [esp + 0x9a], 0xea1de809
mov dword [esp + 0x9e], 0xee2eec07
mov dword [esp + 0xa2], 0xe273e07a
mov dword [esp + 0xa6], 0xe600e471
mov dword [esp + 0xaa], 0x9a0d9879
mov dword [esp + 0xae], 0x9e789c6d
mov dword [esp + 0xb2], 0x9202900d
mov dword [esp + 0xb6], 0x960a940a
mov dword [esp + 0xba], 0x8a658809
mov dword [esp + 0xbe], 0x8e148c7c
mov dword [esp + 0xc2], 0x82658011
mov dword [esp + 0xc6], 0x8612841c
mov dword [esp + 0xca], 0xba99b814
mov dword [esp + 0xce], 0xbe58bc46
mov dword [esp + 0xd2], 0xb222b02c
mov dword [esp + 0xd6], 0xb652b452
mov dword [esp + 0xda], 0xaa37a82e
mov dword [esp + 0xde], 0xae8dac4c
mov dword [esp + 0xe2], 0xa234a05c
mov dword [esp + 0xe6], 0xa636a441
mov dword [esp + 0xea], 0x5aca582e
mov dword [esp + 0xee], 0x5eb85ccf
mov dword [esp + 0xf2], 0x52bd50c2
mov dword [esp + 0xf6], 0x56c754a3
mov dword [esp + 0xfa], 0x4aaf48c8
mov dword [esp + 0xfe], 0x4ed14cd2
mov dword [esp + 0x102], 0x42d240aa
mov dword [esp + 0x106], 0x46ba44af
mov dword [esp + 0x10a], 0x7aed78d2
mov dword [esp + 0x10e], 0x7ee27ce7
mov dword [esp + 0x112], 0x72ea70e0
mov dword [esp + 0x116], 0x76bc749f
mov dword [esp + 0x11a], 0x6abe68a4
mov dword [esp + 0x11e], 0x6eae6cbe
mov dword [esp + 0x122], 0x62a760a9
mov dword [esp + 0x126], 0x66b164b3
mov dword [esp + 0x12a], 0x1aca18b6
mov dword [esp + 0x12e], 0x1ecc1cca
mov dword [esp + 0x132], 0x12f510ce
mov dword [esp + 0x136], 0x16d714c0
mov dword [esp + 0x13a], 0xac108df
mov dword [esp + 0x13e], 0xedd0cca
mov dword [esp + 0x142], 0x2d000df
mov dword [esp + 0x146], 0x6d104d3
mov dword [esp + 0x14a], 0x3aeb38c5
mov dword [esp + 0x14e], 0x3eeb3cfa
mov dword [esp + 0x152], 0x32e630e9
mov dword [esp + 0x156], 0x36d934e5
mov word [esp + 0x15a], 0x2837
mov eax, 0x3048388b
nop
movzx edx, byte [esp + eax - 0x30483815]
mov ecx, eax
xor ecx, edx
lea esi, [ecx + ecx]
not esi
add esi, ecx
and esi, eax
mov edi, esi
and edi, 2
mov ebx, esi
or ebx, 0xfffffffd
inc ebx
mov ecx, esi
and ecx, 0x304839fd
imul ecx, ebx
or esi, 2
imul esi, edi
add ecx, edx
sub ecx, esi
add ecx, eax
mov edx, ecx
xor edx, 0xf2a29632
and ecx, 0xd5d69cd
add ecx, ecx
sub ecx, edx
add ecx, 0x7dbe3ba7
mov edx, ecx
and edx, 0x32
xor ecx, 0x32
lea ecx, [ecx + edx*2]
inc cl
mov byte [esp + eax - 0x30483815], cl
inc eax
cmp eax, 0x30483971
jne 0x422fe0
lea edi, [esp + 0x9ba]
lea eax, [esp + 0x76]
mov ecx, 0x39
xchg esi, eax
rep movsd dword es:[edi], dword [esi]
xchg esi, eax
lea eax, [esp + 0x15a]
lea edi, [esp + 0xa9e]
mov ecx, 1
xchg esi, eax
rep movsw word es:[edi], word [esi]
xchg esi, eax
mov dword [esp + 0x76], 0x82188032
mov dword [esp + 0x7a], 0x86178420
mov dword [esp + 0x7e], 0xfa6af818
mov dword [esp + 0x82], 0xfe5bfc64
mov dword [esp + 0x86], 0xf25df06b
mov dword [esp + 0x8a], 0xf653f44c
mov dword [esp + 0x8e], 0xea70e851
mov dword [esp + 0x92], 0xee48ec48
mov dword [esp + 0x96], 0xe2b0e043
mov dword [esp + 0x9a], 0xe6bbe4b0
mov dword [esp + 0x9e], 0xda75d8b7
mov dword [esp + 0xa2], 0xde48dc64
mov dword [esp + 0xa6], 0xd24dd04b
mov dword [esp + 0xaa], 0xd64ad44c
mov dword [esp + 0xae], 0xca65c84c
mov dword [esp + 0xb2], 0xce5fcc7b
mov dword [esp + 0xb6], 0xc267c050
mov dword [esp + 0xba], 0xc659c45a
mov dword [esp + 0xbe], 0x3aaa3862
mov dword [esp + 0xc2], 0x3e823c97
mov dword [esp + 0xc6], 0x32a530aa
mov dword [esp + 0xca], 0x36aa34af
mov dword [esp + 0xce], 0x2ab228a8
mov dword [esp + 0xd2], 0x2e642c87
mov dword [esp + 0xd6], 0x2276207c
mov dword [esp + 0xda], 0x26662476
mov dword [esp + 0xde], 0x1a5f1861
mov dword [esp + 0xe2], 0x1e491c4b
mov dword [esp + 0xe6], 0x1242104e
mov dword [esp + 0xea], 0x16441442
mov dword [esp + 0xee], 0xaad0846
mov dword [esp + 0xf2], 0xe4f0c58
mov dword [esp + 0xf6], 0x2490047
mov dword [esp + 0xfa], 0x6550442
mov dword [esp + 0xfe], 0x7a287857
mov dword [esp + 0x102], 0x7e297c2b
mov dword [esp + 0x106], 0x7223703d
mov dword [esp + 0x10a], 0x76237432
mov dword [esp + 0x10e], 0x6a3e6821
mov dword [esp + 0x112], 0x6ec16c3d
mov word [esp + 0x116], 0x606f
mov eax, 0xb6be6337
mov ecx, 0x49419cc8
nop
nop
nop
nop
nop
nop
movzx esi, byte [esp + eax + 0x49419d3f]
mov edi, ecx
and edi, 0x41410570
mov edx, eax
and edx, 0x9608028f
or edx, edi
xor esi, 0x61f76570
mov edi, esi
and edi, edx
add edi, edi
sub edx, edi
add edx, esi
mov esi, edx
not esi
and esi, 0xa0
and edx, 0x5f
sub edx, esi
add dl, 0xe8
mov byte [esp + eax + 0x49419d3f], dl
inc eax
dec ecx
cmp eax, 0xb6be63d9
jne 0x423240
lea edi, [esp + 0x876]
lea eax, [esp + 0x76]
mov ecx, 0x28
xchg esi, eax
rep movsd dword es:[edi], dword [esi]
xchg esi, eax
lea eax, [esp + 0x116]
lea edi, [esp + 0x916]
mov ecx, 1
xchg esi, eax
rep movsw word es:[edi], word [esi]
xchg esi, eax
mov dword [esp + 0x76], 0x861c847e
mov dword [esp + 0x7a], 0xba2bb864
mov dword [esp + 0x7e], 0xbe2ebc24
mov dword [esp + 0x82], 0xb257b020
mov dword [esp + 0x86], 0xb659b427
mov dword [esp + 0x8a], 0xaa4fa848
mov dword [esp + 0x8e], 0xae34ac4d
mov dword [esp + 0x92], 0xa244a04c
mov dword [esp + 0x96], 0xa674a44f
mov dword [esp + 0x9a], 0x5a875873
mov dword [esp + 0x9e], 0x5eb15c8b
mov dword [esp + 0xa2], 0x52c450a0
mov dword [esp + 0xa6], 0x56c954c7
mov dword [esp + 0xaa], 0x4ad648c8
mov dword [esp + 0xae], 0x4ea14cd0
mov dword [esp + 0xb2], 0x42d340bf
mov dword [esp + 0xb6], 0x46a344dc
mov dword [esp + 0xba], 0x7ae578de
mov dword [esp + 0xbe], 0x7eee7c9e
mov dword [esp + 0xc2], 0x728e7093
mov dword [esp + 0xc6], 0x76e174e6
mov dword [esp + 0xca], 0x6af668eb
mov dword [esp + 0xce], 0x6ef66cf4
mov dword [esp + 0xd2], 0x62a86083
mov dword [esp + 0xd6], 0x66b264b0
mov dword [esp + 0xda], 0x1ada18b2
mov dword [esp + 0xde], 0x1edb1cdd
mov dword [esp + 0xe2], 0x12c510cf
mov dword [esp + 0xe6], 0x16c614c2
mov dword [esp + 0xea], 0xad808c6
mov dword [esp + 0xee], 0xee90cda
mov dword [esp + 0xf2], 0x2c300dc
mov dword [esp + 0xf6], 0x6cd04cb
mov dword [esp + 0xfa], 0x3ae938c6
mov dword [esp + 0xfe], 0x3eec3ceb
mov dword [esp + 0x102], 0x32e530ef
mov dword [esp + 0x106], 0x36e734f1
mov dword [esp + 0x10a], 0x2aff28f6
mov dword [esp + 0x10e], 0x2efa2cfd
mov dword [esp + 0x112], 0x22cd20f9
mov word [esp + 0x116], 0x2423
mov eax, 0x5b
mov ecx, 0xa4
nop
nop
nop
nop
nop
movzx edx, byte [esp + eax + 0x1b]
mov esi, ecx
or esi, edx
not edx
or edx, eax
and edx, esi
mov bl, 0x27
sub bl, dl
mov byte [esp + eax + 0x1b], bl
inc eax
dec ecx
cmp eax, 0xfd
jne 0x423480
lea eax, [esp + 0xb42]
lea edx, [esp + 0x76]
mov edi, eax
mov ecx, 0x28
xchg esi, edx
rep movsd dword es:[edi], dword [esi]
xchg esi, edx
lea edx, [esp + 0x116]
lea edi, [esp + 0xbe2]
mov ecx, 1
xchg esi, edx
rep movsw word es:[edi], word [esi]
xchg esi, edx
mov dword [esp + 0x76], 0x9d759b57
mov dword [esp + 0x7a], 0x81129f7d
mov dword [esp + 0x7e], 0x8517836d
mov dword [esp + 0x82], 0x896e8769
mov dword [esp + 0x86], 0x8d708b1e
mov dword [esp + 0x8a], 0xb1568f41
mov dword [esp + 0x8e], 0xb55db354
mov dword [esp + 0x92], 0xb95db755
mov dword [esp + 0x96], 0xbd6dbb46
mov dword [esp + 0x9a], 0xa18ebf6b
mov dword [esp + 0x9e], 0xa558a372
mov dword [esp + 0xa2], 0xa93da769
mov dword [esp + 0xa6], 0xad40ab3e
mov dword [esp + 0xaa], 0x51bfaf41
mov dword [esp + 0xae], 0x55a853b9
mov dword [esp + 0xb2], 0x59ca57a6
mov dword [esp + 0xb6], 0x5dba5bb5
mov dword [esp + 0xba], 0x41ac5fb7
mov dword [esp + 0xbe], 0x45d743a7
mov dword [esp + 0xc2], 0x498747ba
mov dword [esp + 0xc6], 0x4dd84bdf
mov dword [esp + 0xca], 0x719f4fa2
mov dword [esp + 0xce], 0x759f739d
mov dword [esp + 0xd2], 0x79a1778a
mov dword [esp + 0xd6], 0x7dab7ba9
mov dword [esp + 0xda], 0x61a37fab
mov dword [esp + 0xde], 0x65a263a4
mov dword [esp + 0xe2], 0x69bc67b6
mov dword [esp + 0xe6], 0x6dbf6bbb
mov dword [esp + 0xea], 0x11c16fbf
mov dword [esp + 0xee], 0x15f013c3
mov dword [esp + 0xf2], 0x19da17c5
mov dword [esp + 0xf6], 0x1dc41bc2
mov dword [esp + 0xfa], 0x1d01fdf
mov dword [esp + 0xfe], 0x5d503d2
mov dword [esp + 0x102], 0x9dc07d6
mov dword [esp + 0x106], 0xdde0bc8
mov dword [esp + 0x10a], 0x31e60fcf
mov dword [esp + 0x10e], 0x35e333e4
mov dword [esp + 0x112], 0x39c437e0
mov word [esp + 0x116], 0x3b3a
xor ecx, ecx
nop
nop
nop
movzx edx, byte [esp + ecx + 0x76]
lea esi, [ecx + 0xca]
and esi, edx
mov edi, esi
and edi, 2
mov ebx, esi
or ebx, 0xfd
inc ebx
mov ebp, esi
and ebp, 0xfffffffd
imul ebp, ebx
or esi, 2
imul esi, edi
sub ebp, esi
add edx, ecx
add edx, 0xca
add edx, ebp
add dl, 0xb0
mov byte [esp + ecx + 0x76], dl
mov esi, ecx
xor esi, 0xfffffffe
mov edx, ecx
or edx, 1
and edx, esi
mov edi, edx
and edi, 2
mov esi, edx
or edx, 2
imul edx, edi
xor edi, 2
and esi, 0xfd
imul esi, edi
xor ecx, 1
add ecx, edx
add ecx, esi
cmp ecx, 0xa2
jb case.default.0x423767
lea edx, [esp + 0xaa0]
lea esi, [esp + 0x76]
mov edi, edx
mov ecx, 0x28
xchg esi, esi
rep movsd dword es:[edi], dword [esi]
xchg esi, esi
lea esi, [esp + 0x116]
mov ecx, 1
lea edi, [esp + 0xb40]
xchg esi, esi
rep movsw word es:[edi], word [esi]
xchg esi, esi
lea ecx, [esp + 0x918]
mov dword [esp + 0x60], ecx
lea ecx, [esp + 0x9ba]
mov dword [esp + 0x64], ecx
lea ecx, [esp + 0x876]
mov dword [esp + 0x68], ecx
mov dword [esp + 0x6c], eax
mov dword [esp + 0x70], edx
xor ecx, ecx
xor eax, eax
cmp ecx, 0x14
setne al
xor ecx, ecx
jmp dword [eax*4 + 0x4431e8]
mov dword [esp + 0x50], ecx
mov eax, dword [esp + ecx + 0x60]
mov dword [esp + 0x76], 0x3261306f
mov dword [esp + 0x7a], 0x36653463
mov dword [esp + 0x7e], 0x2a792867
mov dword [esp + 0x82], 0x2e852c7b
mov word [esp + 0x86], 0x202f
mov ecx, 0xc77e9907
mov edx, 0x88166f8
nop
movzx esi, byte [esp + ecx + 0x3881676f]
mov edi, edx
and edi, 0x800200d
mov ebx, ecx
and ebx, 0xc0329932
or ebx, edi
xor ebx, esi
mov edi, ebx
xor edi, 0x34b8e835
mov esi, ebx
and esi, 0x8308838
xor esi, 0xcc0a31cf
and esi, edi
mov ebp, ebx
and ebp, 2
mov edi, esi
or esi, 2
imul esi, ebp
xor ebp, 2
and edi, 0xfd
imul edi, ebp
xor ebx, 0xca
add ebx, esi
add ebx, edi
inc bl
mov byte [esp + ecx + 0x3881676f], bl
inc ecx
dec edx
cmp ecx, 0xc77e9919
jne 0x4237b0
movzx ecx, word [eax]
lea esi, [esp + 0xbe4]
test cx, cx
je 0x423841
add eax, 2
nop
nop
nop
nop
mov word [esi], cx
add esi, 2
movzx ecx, word [eax]
add eax, 2
test cx, cx
jne 0x423830
mov word [esi], 0
movzx eax, word [esp + 0x76]
test ax, ax
je 0x423871
lea ecx, [esp + 0x78]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [esi], ax
add esi, 2
movzx eax, word [ecx]
add ecx, 2
test ax, ax
jne 0x423860
mov word [esi], 0
mov cx, 0x31
xor eax, eax
cmp cx, 0x35
setb al
lea ebp, [esp + 0x76]
mov dword [esp + 0x3c], esi
jmp dword [eax*4 + 0x443200]
mov ecx, dword [esp + 0x50]
add ecx, 4
xor eax, eax
cmp ecx, 0x14
setne al
jmp dword [eax*4 + 0x4431e8]
inc ecx
xor eax, eax
cmp cx, 0x35
setb al
jmp dword [eax*4 + 0x443200]
mov dword [esp + 0xc], ecx
jmp dword [0x443208]
lea eax, [esp + 0x14]
lea esi, [esp + 0xde4]
lea ecx, [esp + 0x40]
lea edx, [esp + 0x44]
push eax
push esi
push ecx
push edx
push ebp
push ebx
push dword [esp + 0x30]
call fcn.0043caf0
add esp, 0x1c
jmp dword [0x443228]
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x443230]
test byte [esp + 0x10], 1
sete al
mov edx, dword [esp + 0x40]
cmp edx, 1
sete cl
and cl, al
movzx eax, cl
jmp dword [eax*4 + 0x443238]
xor eax, eax
cmp edx, 3
sete al
jmp dword [eax*4 + 0x443248]
mov eax, ebx
xor eax, 1
and ebx, 1
lea ebx, [eax + ebx*2]
jmp dword [0x443220]
mov dword [esp + 0x54], edx
mov dword [esp + 4], ebx
mov dword [esp + 0x26], 0xe94be7a7
mov dword [esp + 0x2a], 0xed43eb49
mov dword [esp + 0x2e], 0xd17eef7b
mov dword [esp + 0x32], 0xd5d4d346
mov eax, 0x56
mov ecx, 0xa9
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx edi, byte [esp + eax - 0x30]
mov edx, ecx
xor edx, eax
and edx, edi
xor edx, eax
add dl, 0x50
mov byte [esp + eax - 0x30], dl
inc eax
dec ecx
cmp eax, 0x66
jne 0x4239a0
movzx eax, word [esp + 0x26]
test ax, ax
je 0x423a0c
lea ecx, [esp + 0x76]
lea ebx, [esp + 0x26]
mov ebp, ecx
jmp 0x4239e8
movzx eax, word [ebx]
test ax, ax
je 0x423a0c
movzx edi, word [ecx]
test di, di
je 0x423a0a
add ecx, 2
add ebx, 2
lea edx, [ebp + 2]
cmp di, ax
je 0x423a02
mov ebp, edx
mov ecx, edx
je 0x4239e0
lea ebx, [esp + 0x26]
jmp 0x4239e0
xor ebp, ebp
xor eax, eax
test ebp, ebp
setne al
jmp dword [eax*4 + 0x443240]
xor eax, eax
cmp dword [esp + 0x54], 3
sete al
lea ebp, [esp + 0x76]
mov ebx, dword [esp + 4]
jmp dword [eax*4 + 0x443248]
mov dword [esp + 0x26], 0x4fef4d9c
mov dword [esp + 0x2a], 0x53e151e3
mov dword [esp + 0x2e], 0x57f955e3
mov dword [esp + 0x32], 0x5bfe59ea
mov word [esp + 0x36], 0x5d5c
lea eax, [esp + 0x26]
mov ecx, 0xd3
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx edx, byte [eax]
mov esi, ecx
and esi, edx
or edx, ecx
not edx
add edx, esi
add dl, 0xa0
mov byte [eax], dl
inc eax
dec ecx
cmp ecx, 0xc1
jne 0x423a70
movzx esi, word [esp + 0x26]
lea eax, [esp + 0x76]
test si, si
mov dword [esp + 4], ebx
je 0x423bcd
lea ecx, [esp + 0x76]
lea edx, [esp + 0x26]
mov eax, ecx
jmp 0x423abc
movzx esi, word [edx]
test si, si
je 0x423bcd
movzx edi, word [ecx]
test di, di
je 0x423bcb
add ecx, 2
add edx, 2
lea ebx, [eax + 2]
cmp di, si
je 0x423ada
mov eax, ebx
mov ecx, ebx
mov ebx, dword [esp + 4]
je 0x423ab0
lea edx, [esp + 0x26]
jmp 0x423ab0
mov eax, dword [esp + 0x14]
cmp eax, 2
mov ebx, dword [esp + 4]
jae 0x423afb
mov ebp, dword [esp]
jmp 0x423ba3
shr eax, 1
lea ecx, [eax - 1]
mov edx, eax
and edx, 3
je 0x423b47
mov dword [esp + 0x10], ecx
xor ebx, ebx
lea esi, [esp + 0xde4]
mov ebp, dword [esp]
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx edi, word [esi]
xor ecx, ecx
test di, di
setne cl
lea esi, [esi + ecx*2]
mov word [ebp], di
add ebp, 2
inc ebx
cmp edx, ebx
jne 0x423b20
mov dword [esp], ebp
sub eax, ebx
mov ebx, dword [esp + 4]
mov ecx, dword [esp + 0x10]
cmp ecx, 3
mov ebp, dword [esp]
jb 0x423ba3
nop
movzx ecx, word [esi]
xor edx, edx
test cx, cx
setne dl
lea edi, [esi + edx*2]
mov word [ebp], cx
movzx ecx, word [esi + edx*2]
xor edx, edx
test cx, cx
setne dl
lea esi, [edi + edx*2]
mov word [ebp + 2], cx
movzx ecx, word [edi + edx*2]
xor edx, edx
test cx, cx
setne dl
lea edi, [esi + edx*2]
mov word [ebp + 4], cx
movzx edx, word [esi + edx*2]
xor ecx, ecx
test dx, dx
setne cl
mov word [ebp + 6], dx
add ebp, 8
lea esi, [edi + ecx*2]
add eax, 0xfffffffc
jne 0x423b50
mov dword [ebp], 0x20003a
add ebp, 4
mov dword [esp], ebp
mov al, 1
mov dword [esp + 0x10], eax
mov eax, ebx
xor eax, 1
and ebx, 1
lea ebx, [eax + ebx*2]
lea ebp, [esp + 0x76]
jmp dword [0x443220]
xor eax, eax
xor ecx, ecx
test eax, eax
setne cl
mov eax, dword [esp + 8]
jmp dword [ecx*4 + 0x443250]
mov eax, dword [esp + 0x14]
cmp eax, 2
jae 0x423bf0
mov esi, dword [esp]
jmp 0x423caf
shr eax, 1
lea edi, [eax - 1]
mov esi, eax
lea ecx, [esp + 0xde4]
and esi, 3
mov edx, dword [esp]
je 0x423c3c
mov dword [esp + 8], edi
xor ebx, ebx
nop
nop
nop
nop
movzx edi, word [ecx]
mov ebp, edx
xor edx, edx
test di, di
setne dl
lea ecx, [ecx + edx*2]
mov edx, ebp
mov word [ebp], di
add edx, 2
inc ebx
cmp esi, ebx
jne 0x423c10
sub eax, ebx
lea ebp, [esp + 0x76]
mov ebx, dword [esp + 4]
mov edi, dword [esp + 8]
mov esi, edx
cmp edi, 3
jb 0x423caf
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ebp, edx
movzx edx, word [ecx]
xor ebx, ebx
test dx, dx
setne bl
lea esi, [ecx + ebx*2]
mov word [ebp], dx
movzx ecx, word [ecx + ebx*2]
xor edx, edx
test cx, cx
setne dl
lea edi, [esi + edx*2]
mov word [ebp + 2], cx
movzx ecx, word [esi + edx*2]
xor edx, edx
test cx, cx
setne dl
lea esi, [edi + edx*2]
mov word [ebp + 4], cx
movzx edx, word [edi + edx*2]
xor ecx, ecx
test dx, dx
setne cl
mov word [ebp + 6], dx
lea edx, [ebp + 8]
lea ecx, [esi + ecx*2]
add eax, 0xfffffffc
jne 0x423c50
mov esi, edx
lea ebp, [esp + 0x76]
mov ebx, dword [esp + 4]
lea eax, [esi + 2]
mov dword [esp], eax
jmp dword [0x443258]
mov word [esi], 0xa
mov word [esi], 0xa
mov al, 1
jmp dword [0x443260]
mov dword [esp + 8], eax
mov eax, ebx
xor eax, 1
and ebx, 1
lea ebx, [eax + ebx*2]
jmp dword [0x443220]
lea eax, [esp + 0x14]
lea ecx, [esp + 0xde4]
lea edx, [esp + 0x40]
lea esi, [esp + 0x44]
push eax
push ecx
push edx
push esi
push ebp
push ebx
push dword [esp + 0x30]
call fcn.0043caf0
add esp, 0x1c
jmp case.0x423767.14
mov eax, dword [esp + 0x18]
mov dword [esp + 0x26], 0x55565768
xor ecx, ecx
nop
nop
movzx esi, byte [esp + ecx + 0x26]
lea edx, [ecx + 0x9f]
and edx, esi
mov edi, edx
not edi
lea ebx, [esi + esi]
not ebx
add ebx, esi
mov esi, 0x70d36560
sub esi, ecx
and esi, ebx
not esi
lea edx, [edx + edi*2]
inc edx
and edx, esi
mov esi, edx
not esi
and esi, 0xf9
and edx, 6
sub edx, esi
inc dl
mov byte [esp + ecx + 0x26], dl
mov edx, ecx
and edx, 1
xor ecx, 1
lea ecx, [ecx + edx*2]
cmp ecx, 4
jb 0x423d30
mov ecx, dword [0x448580]
test ecx, ecx
je 0x423dc0
mov edx, dword [esp + 0x26]
xor esi, esi
mov edi, dword [0x448584]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp dword [edi + esi*8], 0xb430e561
je 0x423db0
inc esi
cmp ecx, esi
jne 0x423da0
jmp 0x423dc0
mov ecx, dword [edi + esi*8 + 4]
cmp ecx, edx
jne case.default.0x423dd2
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [esp + 0xc]
inc ecx
xor eax, eax
cmp cx, 0x35
setb al
mov esi, dword [esp + 0x3c]
jmp dword [eax*4 + 0x443200]
push eax
push 4
push ecx
push dword [0x448588]
call fcn.00439ae0
add esp, 0x10
mov ecx, dword [esp + 0xc]
inc ecx
xor eax, eax
cmp cx, 0x35
setb al
mov esi, dword [esp + 0x3c]
jmp dword [eax*4 + 0x443200]
mov dword [esp + 0x44], 0x800
mov dword [esp + 0x14], 0x400
mov dword [esp + 0x10], 0
xor ebx, ebx
jmp dword [0x443220]
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x443218]
mov word [esi - 2], cx
lea eax, [esp + 0x18]
lea ecx, [esp + 0xbe4]
push dword [esp + 0x38]
push 0
push 0x20019
push eax
push ecx
call fcn.0043c440
mov ecx, dword [esp + 0x20]
add esp, 0x14
mov word [esi - 2], cx
lea eax, [esp + 0x18]
lea ecx, [esp + 0xbe4]
push dword [esp + 0x38]
push 0
push 0x20019
push eax
push ecx
call fcn.0043c440
mov ecx, dword [esp + 0x20]
add esp, 0x14
jmp dword [0x443210]
mov eax, dword [esp + 0x38]
mov dword [esp + 0x76], 0x55565768
xor ebx, ebx
nop
nop
movzx edx, byte [esp + ebx + 0x76]
lea ecx, [ebx + 0x9f]
and ecx, edx
mov esi, ecx
not esi
lea edi, [edx + edx]
not edi
add edi, edx
mov edx, 0x70d36560
sub edx, ebx
and edx, edi
not edx
lea ecx, [ecx + esi*2]
inc ecx
and ecx, edx
mov edx, ecx
not edx
and edx, 0xf9
and ecx, 6
sub ecx, edx
inc cl
mov byte [esp + ebx + 0x76], cl
mov ecx, ebx
and ecx, 1
xor ebx, 1
lea ebx, [ebx + ecx*2]
cmp ebx, 4
jb 0x423eb0
mov ecx, dword [0x448580]
test ecx, ecx
je 0x423f50
mov edx, dword [esp + 0x76]
xor esi, esi
mov edi, dword [0x448584]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp dword [edi + esi*8], 0xb430e561
je 0x423f30
inc esi
cmp ecx, esi
jne 0x423f20
jmp 0x423f50
mov ecx, dword [edi + esi*8 + 4]
cmp ecx, edx
je 0x423f50
push eax
push 4
push ecx
push dword [0x448588]
call fcn.00439ae0
add esp, 0x10
nop
nop
nop
nop
nop
nop
mov eax, dword [case.0x422a15.17]
mov edi, dword [esp + 0x4c]
mov esi, dword [esp + 0x48]
nop
nop
nop
jmp eax
jmp dword [0x443278]
push esi
call fcn.00407fd0
add esp, 4
inc edi
xor eax, eax
cmp edi, dword [esp + 0x1c]
setb al
jmp dword [eax*4 + 0x4431c8]
mov eax, dword [esp]
mov word [eax], 0
mov eax, dword [esp + 8]
mov ecx, eax
and cl, 1
movzx ecx, cl
jmp dword [ecx*4 + 0x4431d0]
movzx ecx, word [esp + 0x11e4]
xor edi, edi
test cx, cx
je 0x423ffb
lea eax, [esp + 0x11e6]
jmp 0x423fcc
inc edi
movzx ecx, word [eax]
add eax, 2
test cx, cx
je 0x423ffb
cmp cx, 0x7f
jbe 0x423fc0
movzx edx, cx
cmp edx, 0x7ff
ja 0x423ff0
add edi, 2
jmp 0x423fc1
cmp cx, 0xffff
je 0x423fc1
add edi, 3
jmp 0x423fc1
lea ebx, [edi + 1]
push ebx
call fcn.00407fc0
add esp, 4
lea ecx, [esp + 0x11e4]
push ecx
push ebx
mov dword [esp + 0xc], eax
push eax
call fcn.00408dd0
add esp, 0xc
mov dword [esp + 0x76], 0x8f9291a1
mov dword [esp + 0x7a], 0x9387868d
mov dword [esp + 0x7e], 0x98848681
mov dword [esp + 0x82], 0x9b9ba2c3
mov dword [esp + 0x86], 0x989d9e9c
mov dword [esp + 0x8a], 0x9884a5db
mov dword [esp + 0x8e], 0x9e96909e
mov dword [esp + 0x92], 0x878ad38f
mov word [esp + 0x96], 0x174
mov eax, 0x5249dfe0
mov ecx, 0x1f
movzx edx, byte [esp + eax - 0x5249df6a]
mov ebx, edx
not ebx
lea ebp, [edx + edx]
not ebp
add ebp, edx
or ebp, ebx
mov ebx, ebp
not ebx
or ebx, eax
and edx, ecx
lea esi, [ebx + ebp]
add ebx, ebp
inc ebx
mov ebp, edx
not ebp
and ebp, ebx
xor edx, ebx
add edx, esi
inc edx
sub edx, ebp
mov esi, edx
and esi, 2
mov ebx, edx
or ebx, 2
imul ebx, esi
sub ebx, edx
and edx, 0xfd
xor esi, 2
imul esi, edx
add ebx, esi
mov byte [esp + eax - 0x5249df6a], bl
inc eax
dec ecx
cmp eax, 0x5249e002
jne 0x424080
lea eax, [esp + 0x76]
mov ecx, dword [esp + 0x21f8]
push edi
mov esi, dword [esp + 8]
push esi
push eax
call fcn.00408f20
jmp dword [0x443280]
push esi
mov esi, eax
call fcn.00407fd0
mov eax, esi
add esp, 4
and al, 1
add esp, 0x21e4
pop esi
pop edi
pop ebx
pop ebp
ret
int3
sub al, byte [edx]
sub byte [edx], 0x42
add byte [esi], ah
sub al, byte [edx]
push eax
sub al, byte [edx]
je 0x4431d4
inc edx
add byte [eax + 0x2a], dl
inc edx
add byte [eax - 0x78ffbdd6], al
sub al, byte [edx]
add dword [eax], eax
add byte [eax], al
add dword [eax], eax
add byte [eax], al
adc al, 0x41
inc edx
add byte [ecx], al
add byte [eax], al
add byte [edx - 0x3effbdc1], al
sub al, byte [edx]
pop es
inc ecx
inc edx
add byte [ebp + 0x100423f], bl
popfd
aas
inc edx
add byte [ecx], al
sub eax, dword [edx]
adc byte [ebx], ch
inc edx
add byte [edx + 0x3f], ah
inc edx
add byte [0xa000422b], dh
inc edx
add byte [eax + 0x37], dh
inc edx
add byte [eax + 0x3f], ah
inc edx
add byte [eax + 0x3f], ah
inc edx
add byte [eax + 0x3f], ah
inc edx
add byte [edx + 0x3f], ah
inc edx
add byte [eax - 0x2effbdc8], ah
cmp byte [edx], al
sar dword [eax], 1
inc edx
add byte [eax + 0x3e], ch
inc edx
add byte [eax + 0x3e], al
inc edx
cmp byte [edx], al
sar dword [eax], 1
inc edx
add byte [eax + 0x3e], ch
inc edx
add byte [eax + 0x3e], al
inc edx
add byte [eax], dh
inc edx
add byte [eax + 0x3e], al
inc edx
add al, al
cmp byte [edx], al
adc byte [esi], bh
inc edx
add al, ah
cmp byte [edx], al
invalid