Function at 0x420c16
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
mov eax, 0x10d0
call fcn.00409100
mov esi, esp
push eax
mov dword [esi + 0x2c], esp
push eax
mov dword [esi + 0x38], esp
push eax
mov dword [esi + 0x74], esp
push eax
mov dword [esi + 0x78], esp
push eax
mov dword [esi + 0xb4], esp
push eax
mov dword [esi + 0x50], esp
sub esp, 0xa4
mov dword [esi + 0x70], esp
sub esp, 0xb0
mov ebx, esp
and ebx, 0xfffffff8
mov esp, ebx
push eax
sub esp, 0xe4
mov dword [esi + 0x6c], esp
sub esp, 0xf0
mov eax, esp
and eax, 0xfffffff8
mov dword [esi + 0xac], eax
mov esp, eax
push eax
sub esp, 0xa0
mov dword [esi + 0x68], esp
sub esp, 0xb0
mov eax, esp
and eax, 0xfffffff8
mov dword [esi + 0xa8], eax
mov esp, eax
push eax
sub esp, 0xa0
mov dword [esi + 0x64], esp
sub esp, 0xb0
mov eax, esp
and eax, 0xfffffff8
mov dword [esi + 0xa4], eax
mov esp, eax
push eax
sub esp, 0xa0
mov dword [esi + 0xa0], esp
sub esp, 0xb0
mov eax, esp
and eax, 0xfffffff8
mov dword [esi + 0x4c], eax
mov esp, eax
push eax
sub esp, 0x10
mov dword [esi + 0x9c], esp
push eax
mov dword [esi + 0x80], esp
push eax
mov dword [esi + 0x7c], esp
push eax
mov dword [esi + 0x84], esp
sub esp, 0x200
mov dword [esi + 0x88], esp
push eax
mov dword [esi + 0x90], esp
sub esp, 0x20
mov eax, esp
and eax, 0xfffffff8
mov dword [esi + 0x34], eax
mov esp, eax
push eax
mov dword [esi + 0x8c], esp
push eax
mov dword [esi + 0x20], esp
push eax
mov dword [esi + 0x3c], esp
sub esp, 0x800
mov dword [esi + 8], esp
push eax
mov dword [esi + 0x48], esp
push eax
mov dword [esi + 0x30], esp
sub esp, 0x400
mov dword [esi + 0x24], esp
push eax
mov dword [esi + 0x28], esp
push eax
mov dword [esi + 0x58], esp
sub esp, 0x18
mov eax, esp
and eax, 0xfffffff8
mov dword [esi + 0x40], eax
mov esp, eax
push eax
sub esp, 0x1c
mov eax, esp
and eax, 0xfffffff8
mov dword [esi + 0x44], eax
mov esp, eax
push eax
mov dword [esi + 0x60], esp
sub esp, 0x30
mov eax, esp
and eax, 0xfffffff8
mov dword [esi + 0x98], eax
mov esp, eax
mov dword [esi + 0xc8], 0x3380319c
mov dword [esi + 0xcc], 0x37713571
mov dword [esi + 0xd0], 0x2b992991
mov dword [esi + 0xd4], 0x2f9c2d98
mov dword [esi + 0xd8], 0x238e2189
mov dword [esi + 0xdc], 0x27952591
mov dword [esi + 0xe0], 0x1ba8195d
mov word [esi + 0xe4], 0x1d1c
mov dword [esi + 0xea], 0
mov dword [esi + 0xe6], 0
mov dword [esi], 0
mov eax, dword [esi]
cmp eax, 0x25
ja 0x41f14e
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esi]
mov ecx, dword [esi]
movzx ecx, byte [esi + ecx + 0xc8]
add eax, 0xc3598788
mov edx, eax
and edx, ecx
mov edi, eax
xor edi, ecx
or eax, ecx
xor eax, edi
lea ecx, [edi + edx*2]
add eax, edx
sub ecx, eax
mov dword [esi + 0x10], ecx
mov eax, dword [esi + 0x10]
add al, 0x48
mov ecx, dword [esi]
mov byte [esi + ecx + 0xc8], al
inc dword [esi]
mov eax, dword [esi]
cmp eax, 0x26
jb 0x41f110
lea eax, [esi + 0x5c]
lea ecx, [esi + 0xc8]
push 0
push 0
push 0x20019
push eax
push ecx
call fcn.0043b030
add esp, 0x14
shr eax, 0x1f
jmp dword [eax*4 + 0x442e00]
lea eax, [esi + 0xc4]
lea ecx, [esi + 0x94]
push 0
push 0
push 0
push 0
push eax
push ecx
push 0
push 0
push dword [esi + 0x5c]
call fcn.0043b450
add esp, 0x24
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x442e18]
mov eax, dword [esi + 0x2c]
lea ecx, [esi + 0xc8]
mov dword [eax], ecx
mov eax, dword [esi + 0x38]
mov byte [eax], 0
mov eax, dword [esi + 0x74]
jmp dword [0x442e20]
mov dword [eax], 0
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov dword [eax], 0
jmp dword [0x442e2c]
xor edi, edi
mov eax, dword [esi + 0x34]
add eax, 2
mov dword [esi + 0xb8], eax
xor eax, eax
cmp edi, dword [esi + 0x94]
setb al
mov dword [esi + 0xb0], ebx
jmp dword [eax*4 + 0x442e30]
mov eax, dword [esi + 0x2c]
mov eax, dword [eax]
mov dword [esi + 0xc], eax
mov word [eax], 0
mov eax, dword [esi + 0x38]
movzx ebx, byte [eax]
jmp dword [ebx*4 + 0x442ef0]
jmp case.0x420811.1
jmp dword [edx*4 + 0x442ee8]
mov eax, dword [esi + 0x74]
mov edi, dword [eax]
inc edi
mov dword [eax], edi
xor eax, eax
cmp edi, dword [esi + 0x94]
setb al
jmp dword [eax*4 + 0x442e30]
mov ebx, dword [esi + 0xc4]
mov eax, ebx
inc eax
lea eax, [ebx + ebx + 2]
jns 0x41f265
mov eax, 0xffffffff
push eax
call fcn.00409130
add esp, 4
mov ecx, eax
mov eax, dword [esi + 0x78]
mov dword [eax], ecx
mov eax, dword [esi + 0xb4]
mov dword [eax], ebx
push eax
push ecx
push edi
mov edi, ecx
push dword [esi + 0x5c]
call fcn.0043b180
add esp, 0x10
not eax
shr eax, 0x1f
mov ecx, 1
xor edx, edx
mov ebx, dword [esi + 0xb0]
jmp dword [eax*4 + 0x442e38]
jmp dword [edx*4 + 0x442ed8]
push dword [esi + 0x5c]
push 0
push 0x20019
push dword [esi + 0x50]
push edi
call fcn.0043b030
add esp, 0x14
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x442e40]
xor eax, eax
test edi, edi
sete al
xor ecx, ecx
mov edx, 1
jmp dword [eax*4 + 0x442ed0]
mov dword [ebx], 0x33a33585
mov dword [ebx + 4], 0x2fbe31af
mov dword [ebx + 8], 0x2ba12dbf
mov dword [ebx + 0xc], 0x27b229bb
mov dword [ebx + 0x10], 0x238025aa
mov dword [ebx + 0x14], 0x1fb7218b
mov dword [ebx + 0x18], 0x1b801d8c
mov dword [ebx + 0x1c], 0x1791198b
mov dword [ebx + 0x20], 0x1374159b
mov dword [ebx + 0x24], 0xf8b11a1
mov dword [ebx + 0x28], 0xb810d83
mov dword [ebx + 0x2c], 0x7910995
mov dword [ebx + 0x30], 0x3960591
mov dword [ebx + 0x34], 0x7f60019b
mov dword [ebx + 0x38], 0x7bf77dd3
mov dword [ebx + 0x3c], 0x77f579e4
mov dword [ebx + 0x40], 0x73f975f1
mov dword [ebx + 0x44], 0x6feb71fe
mov dword [ebx + 0x48], 0x6bc86dfd
mov dword [ebx + 0x4c], 0x67e669da
mov dword [ebx + 0x50], 0x63fe65f7
mov dword [ebx + 0x54], 0x5ff461f5
mov dword [ebx + 0x58], 0x5bd15dc5
mov dword [ebx + 0x5c], 0x571f59fe
mov dword [ebx + 0x60], 0x531d551b
mov dword [ebx + 0x64], 0x4fed5119
mov dword [ebx + 0x68], 0x4bf64df4
mov dword [ebx + 0x6c], 0x4704491a
mov dword [ebx + 0x70], 0x43094509
mov dword [ebx + 0x74], 0xbf0f410d
mov dword [ebx + 0x78], 0xbb20bdf1
mov dword [ebx + 0x7c], 0xb706b9f7
mov dword [ebx + 0x80], 0xb3fcb5fe
mov dword [ebx + 0x84], 0xafe0b10d
mov dword [ebx + 0x88], 0xabe3adfe
mov dword [ebx + 0x8c], 0xa7e4a9fa
mov dword [ebx + 0x90], 0xa3eaa518
mov dword [ebx + 0x94], 0x9feaa11d
mov dword [ebx + 0x98], 0x9bd59dd4
mov dword [ebx + 0x9c], 0x973c99d0
lea eax, [ebx + 0xa0]
mov word [ebx + 0xa0], 0x9596
mov dword [ebx + 0xaa], 0
mov dword [ebx + 0xa6], 0
mov dword [ebx + 0xa2], 0
mov dword [esi], 0
mov ecx, dword [esi]
cmp ecx, 0xad
ja 0x41f496
nop
nop
nop
nop
mov ecx, dword [esi]
mov edx, dword [esi]
movzx edx, byte [ebx + edx]
lea edi, [ecx - 0x44a89d77]
and edi, edx
add ecx, edx
add ecx, 0xbb576289
add edi, edi
sub ecx, edi
mov dword [esi + 0x10], ecx
mov ecx, dword [esi + 0x10]
add cl, 0x41
mov edx, dword [esi]
mov byte [ebx + edx], cl
inc dword [esi]
mov ecx, dword [esi]
cmp ecx, 0xae
jb 0x41f460
mov edx, ebx
mov ebx, dword [esi + 0x70]
mov edi, ebx
mov ecx, 0x28
xchg esi, edx
rep movsd dword es:[edi], dword [esi]
xchg esi, edx
lea edi, [ebx + 0xa0]
mov ecx, 1
xchg esi, eax
rep movsw word es:[edi], word [esi]
xchg esi, eax
mov ebx, dword [esi + 0xac]
mov dword [ebx], 0x33cb31ed
mov dword [ebx + 4], 0x37c435d7
mov dword [ebx + 8], 0xcb39c937
mov dword [ebx + 0xc], 0xcf28cd33
mov dword [ebx + 0x10], 0xc32ec134
mov dword [ebx + 0x14], 0xc73fc513
mov dword [ebx + 0x18], 0xdb3ed926
mov dword [ebx + 0x1c], 0xdf29dd23
mov dword [ebx + 0x20], 0xd3f2d123
mov dword [ebx + 0x24], 0xd702d50a
mov dword [ebx + 0x28], 0xeb29e904
mov dword [ebx + 0x2c], 0xef1ced19
mov dword [ebx + 0x30], 0xe307e112
mov dword [ebx + 0x34], 0xe712e51a
mov dword [ebx + 0x38], 0xfb1ff92e
mov dword [ebx + 0x3c], 0xff0dfd0e
mov dword [ebx + 0x40], 0xf30df109
mov dword [ebx + 0x44], 0xf71af50a
mov dword [ebx + 0x48], 0x8b73895f
mov dword [ebx + 0x4c], 0x8f6a8d72
mov dword [ebx + 0x50], 0x8375817f
mov dword [ebx + 0x54], 0x87a68577
mov dword [ebx + 0x58], 0x9b7f9945
mov dword [ebx + 0x5c], 0x9f6d9d6f
mov dword [ebx + 0x60], 0x93759171
mov dword [ebx + 0x64], 0x9768956d
mov dword [ebx + 0x68], 0xab8aa94f
mov dword [ebx + 0x6c], 0xaf5bad7f
mov dword [ebx + 0x70], 0xa351a142
mov dword [ebx + 0x74], 0xa755a52d
mov dword [ebx + 0x78], 0xbb5fb94c
mov dword [ebx + 0x7c], 0xbf52bd41
mov dword [ebx + 0x80], 0xb340b160
mov dword [ebx + 0x84], 0xb750b54b
mov dword [ebx + 0x88], 0x4bb649b1
mov dword [ebx + 0x8c], 0x4fbd4da9
mov dword [ebx + 0x90], 0x439d41ac
mov dword [ebx + 0x94], 0x47b245b1
mov dword [ebx + 0x98], 0x5ba559a4
mov dword [ebx + 0x9c], 0x5fa55da3
mov dword [ebx + 0xa0], 0x539b51bc
mov dword [ebx + 0xa4], 0x57615567
mov dword [ebx + 0xa8], 0x6ba9695d
mov dword [ebx + 0xac], 0x6fa86daa
mov dword [ebx + 0xb0], 0x63566150
mov dword [ebx + 0xb4], 0x67556555
mov dword [ebx + 0xb8], 0x7b4b7949
mov dword [ebx + 0xbc], 0x7f9a7d4d
mov dword [ebx + 0xc0], 0x73b07143
mov dword [ebx + 0xc4], 0x77be75bc
mov dword [ebx + 0xc8], 0xb3a09c9
mov dword [ebx + 0xcc], 0xf3f0d3c
mov dword [ebx + 0xd0], 0x3360130
mov dword [ebx + 0xd4], 0x73405c6
mov dword [ebx + 0xd8], 0x1b2c19d9
mov dword [ebx + 0xdc], 0x1f291d2a
mov dword [ebx + 0xe0], 0x13fe1126
lea eax, [ebx + 0xe4]
mov word [ebx + 0xe4], 0x1514
mov dword [ebx + 0xe6], 0
mov dword [esi], 0
mov ecx, dword [esi]
cmp ecx, 0xe9
ja 0x41f6f7
mov ecx, dword [esi]
mov edx, dword [esi]
movzx edx, byte [ebx + edx]
lea edi, [ecx + edx]
add edi, 0xe202e878
add ecx, 0xe202e878
and ecx, edx
add ecx, ecx
sub edi, ecx
mov dword [esi + 0x10], edi
mov ecx, dword [esi + 0x10]
add cl, 0xb8
mov edx, dword [esi]
mov byte [ebx + edx], cl
inc dword [esi]
mov ecx, dword [esi]
cmp ecx, 0xea
jb 0x41f6c0
mov edx, ebx
mov ebx, dword [esi + 0x6c]
mov edi, ebx
mov ecx, 0x39
xchg esi, edx
rep movsd dword es:[edi], dword [esi]
xchg esi, edx
lea edi, [ebx + 0xe4]
mov ecx, 1
xchg esi, eax
rep movsw word es:[edi], word [esi]
xchg esi, eax
mov ebx, dword [esi + 0xa8]
mov dword [ebx], 0x23bb21d1
mov dword [ebx + 4], 0xdf4eddbf
mov dword [ebx + 8], 0xdb55d94f
mov dword [ebx + 0xc], 0xd74ad54b
mov dword [ebx + 0x10], 0xd334d15a
mov dword [ebx + 0x14], 0xcf52cd23
mov dword [ebx + 0x18], 0xcb53c950
mov dword [ebx + 0x1c], 0xc75bc557
mov dword [ebx + 0x20], 0xc313c122
mov dword [ebx + 0x24], 0xff2afd0f
mov dword [ebx + 0x28], 0xfb1cf92e
mov dword [ebx + 0x2c], 0xf77bf50b
mov dword [ebx + 0x30], 0xf364f17a
mov dword [ebx + 0x34], 0xef7ded63
mov dword [ebx + 0x38], 0xeb0ce97b
mov dword [ebx + 0x3c], 0xe776e51a
mov dword [ebx + 0x40], 0xe37ee177
mov dword [ebx + 0x44], 0x9f089d79
mov dword [ebx + 0x48], 0x9b159901
mov dword [ebx + 0x4c], 0x9765957e
mov dword [ebx + 0x50], 0x931c9119
mov dword [ebx + 0x54], 0x8f1d8d06
mov dword [ebx + 0x58], 0x8b1d891f
mov dword [ebx + 0x5c], 0x874f856e
mov dword [ebx + 0x60], 0x8349814b
mov dword [ebx + 0x64], 0xbf41bd4d
mov dword [ebx + 0x68], 0xbb46b940
mov dword [ebx + 0x6c], 0xb778b56a
mov dword [ebx + 0x70], 0xb37db165
mov dword [ebx + 0x74], 0xaf7fad61
mov dword [ebx + 0x78], 0xab34a97d
mov dword [ebx + 0x7c], 0xa766a567
mov dword [ebx + 0x80], 0xa368a16e
mov dword [ebx + 0x84], 0x5f8c5d61
mov dword [ebx + 0x88], 0x5b8b598e
mov dword [ebx + 0x8c], 0x5798558a
mov dword [ebx + 0x90], 0x53825194
mov dword [ebx + 0x94], 0x4f824d91
mov dword [ebx + 0x98], 0x4b814980
mov dword [ebx + 0x9c], 0x47a04584
lea eax, [ebx + 0xa0]
mov word [ebx + 0xa0], 0x4146
mov dword [ebx + 0xa6], 0
mov dword [ebx + 0xa2], 0
mov dword [esi], 0
mov ecx, dword [esi]
cmp ecx, 0xa9
ja 0x41f8c7
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [esi]
mov edx, dword [esi]
movzx edi, byte [ebx + edx]
lea edx, [ecx + edi]
add ecx, 0xfb
and ecx, edi
add ecx, ecx
sub edx, ecx
add edx, 0xc89d0cfb
mov dword [esi + 0x10], edx
mov ecx, dword [esi + 0x10]
add cl, 0x23
mov edx, dword [esi]
mov byte [ebx + edx], cl
inc dword [esi]
mov ecx, dword [esi]
cmp ecx, 0xaa
jb 0x41f890
mov edx, ebx
mov ecx, 0x28
mov ebx, dword [esi + 0x68]
mov edi, ebx
xchg esi, edx
rep movsd dword es:[edi], dword [esi]
xchg esi, edx
lea edi, [ebx + 0xa0]
mov ecx, 1
xchg esi, eax
rep movsw word es:[edi], word [esi]
xchg esi, eax
mov ebx, dword [esi + 0xa4]
mov dword [ebx], 0x4bcb5525
mov dword [ebx + 4], 0x4fde492f
mov dword [ebx + 8], 0x43d94ddf
mov dword [ebx + 0xc], 0x47da41d3
mov dword [ebx + 0x10], 0x7b2845d2
mov dword [ebx + 0x14], 0x7fe2790b
mov dword [ebx + 0x18], 0x73e37de4
mov dword [ebx + 0x1c], 0x77eb7117
mov dword [ebx + 0x20], 0x6b23751a
mov dword [ebx + 0x24], 0x6f3a693e
mov dword [ebx + 0x28], 0x63006d3e
mov dword [ebx + 0x2c], 0x67eb6113
mov dword [ebx + 0x30], 0x9bf865f2
mov dword [ebx + 0x34], 0x9f09990b
mov dword [ebx + 0x38], 0x93f09d03
mov dword [ebx + 0x3c], 0x970691e2
mov dword [ebx + 0x40], 0x8b0e9507
mov dword [ebx + 0x44], 0x8f148915
mov dword [ebx + 0x48], 0x83198d15
mov dword [ebx + 0x4c], 0x87f181ee
mov dword [ebx + 0x50], 0xbb10850d
mov dword [ebx + 0x54], 0xbf29b926
mov dword [ebx + 0x58], 0xb321bd2f
mov dword [ebx + 0x5c], 0xb7ffb1de
mov dword [ebx + 0x60], 0xabfdb5e3
mov dword [ebx + 0x64], 0xafeda9e1
mov dword [ebx + 0x68], 0xa3d6add4
mov dword [ebx + 0x6c], 0xa7f4a1f2
mov dword [ebx + 0x70], 0xdbf1a5f1
mov dword [ebx + 0x74], 0xdf8fd98d
mov dword [ebx + 0x78], 0xd3b8dd89
mov dword [ebx + 0x7c], 0xd796d187
mov dword [ebx + 0x80], 0xcb9cd59e
mov dword [ebx + 0x84], 0xcf98c98d
mov dword [ebx + 0x88], 0xc39bcd9e
mov dword [ebx + 0x8c], 0xc794c192
mov dword [ebx + 0x90], 0xfb92c580
mov dword [ebx + 0x94], 0xffb2f9bd
mov dword [ebx + 0x98], 0xf3b5fdb4
mov dword [ebx + 0x9c], 0xf79cf1b8
lea eax, [ebx + 0xa0]
mov word [ebx + 0xa0], 0xf5f6
mov word [ebx + 0xaa], 0
mov dword [ebx + 0xa6], 0
mov dword [ebx + 0xa2], 0
mov dword [esi], 0
mov ecx, dword [esi]
cmp ecx, 0xab
ja 0x41faa1
nop
nop
nop
nop
nop
nop
mov ecx, dword [esi]
mov edx, dword [esi]
movzx edi, byte [ebx + edx]
lea edx, [ecx + edi]
add edx, 0x4005e9cd
add ecx, 0x4005e9cd
and ecx, edi
add ecx, ecx
mov edi, ecx
xor edi, edx
not ecx
and ecx, edx
add ecx, ecx
sub ecx, edi
mov dword [esi + 0x10], ecx
mov ecx, dword [esi + 0x10]
add cl, 0x65
mov edx, dword [esi]
mov byte [ebx + edx], cl
inc dword [esi]
mov ecx, dword [esi]
cmp ecx, 0xac
jb 0x41fa60
mov edx, ebx
mov ebx, dword [esi + 0x64]
mov edi, ebx
mov ecx, 0x28
xchg esi, edx
rep movsd dword es:[edi], dword [esi]
xchg esi, edx
lea edi, [ebx + 0xa0]
mov ecx, 1
xchg esi, eax
rep movsw word es:[edi], word [esi]
xchg esi, eax
mov edx, dword [esi + 0x4c]
mov dword [edx], 0x33a33545
mov dword [edx + 4], 0x2fbe31af
mov dword [edx + 8], 0x2ba12dbf
mov dword [edx + 0xc], 0x27b229bb
mov dword [edx + 0x10], 0x234025aa
mov dword [edx + 0x14], 0x5fba2153
mov dword [edx + 0x18], 0x5bcb5dc4
mov dword [edx + 0x1c], 0x57c359c7
mov dword [edx + 0x20], 0x531b5532
mov dword [edx + 0x24], 0x4f025119
mov dword [edx + 0x28], 0x4b284d1e
mov dword [edx + 0x2c], 0x47c3493b
mov dword [edx + 0x30], 0x43d045ca
mov dword [edx + 0x34], 0x7fd141d3
mov dword [edx + 0x38], 0x7b187deb
mov dword [edx + 0x3c], 0x77f6790a
mov dword [edx + 0x40], 0x73ee75e7
mov dword [edx + 0x44], 0x6fe471e5
mov dword [edx + 0x48], 0x6be16df5
mov dword [edx + 0x4c], 0x6719690e
mov dword [edx + 0x50], 0x63e865ed
mov dword [edx + 0x54], 0x9ff161f6
mov dword [edx + 0x58], 0x9b099d0f
mov dword [edx + 0x5c], 0x97df99fe
mov dword [edx + 0x60], 0x93dd95db
mov dword [edx + 0x64], 0x8fed91d9
mov dword [edx + 0x68], 0x8bf68df4
mov dword [edx + 0x6c], 0x87c489da
mov dword [edx + 0x70], 0x83c985c9
mov dword [edx + 0x74], 0xbfcf81cd
mov dword [edx + 0x78], 0xbb20bdf1
mov dword [edx + 0x7c], 0xb7c6b9f7
mov dword [edx + 0x80], 0xb3fcb5fe
mov dword [edx + 0x84], 0xafe0b1cd
mov dword [edx + 0x88], 0xabe3adfe
mov dword [edx + 0x8c], 0xa7e4a9fa
mov dword [edx + 0x90], 0xa3eaa5d8
mov dword [edx + 0x94], 0xdfeaa1dd
mov dword [edx + 0x98], 0xdb95dd94
mov dword [edx + 0x9c], 0xd7bcd990
lea eax, [edx + 0xa0]
mov word [edx + 0xa0], 0xd5d6
mov dword [edx + 0xaa], 0
mov dword [edx + 0xa6], 0
mov dword [edx + 0xa2], 0
mov dword [esi], 0
mov ecx, dword [esi]
cmp ecx, 0xad
ja 0x41fc8f
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov edi, dword [esi]
mov ecx, dword [esi]
movzx ebx, byte [edx + ecx]
lea ecx, [edi + 0x7f3c09a9]
lea edx, [edi + ebx]
add edx, 0x7f3c09a9
add edi, 0xa9
and edi, ebx
and ecx, ebx
add ecx, edi
mov edi, edx
not edi
and edi, ecx
not ecx
and ecx, edx
sub ecx, edi
mov dword [esi + 0x10], ecx
mov ecx, dword [esi + 0x10]
add cl, 0x61
mov edx, dword [esi]
mov edi, dword [esi + 0x4c]
mov byte [edi + edx], cl
mov edx, dword [esi + 0x4c]
inc dword [esi]
mov ecx, dword [esi]
cmp ecx, 0xae
jb 0x41fc40
mov ebx, dword [esi + 0xa0]
mov edi, ebx
mov ecx, 0x28
xchg esi, edx
rep movsd dword es:[edi], dword [esi]
xchg esi, edx
lea edi, [ebx + 0xa0]
mov ecx, 1
xchg esi, eax
rep movsw word es:[edi], word [esi]
xchg esi, eax
mov eax, dword [esi + 0x70]
mov edx, dword [esi + 0x9c]
mov dword [edx], eax
mov eax, dword [esi + 0x6c]
mov dword [edx + 4], eax
mov eax, dword [esi + 0x68]
mov dword [edx + 8], eax
mov eax, dword [esi + 0x64]
mov dword [edx + 0xc], eax
mov dword [edx + 0x10], ebx
mov eax, dword [esi + 0x80]
mov dword [eax], edx
lea eax, [edx + 0x14]
mov ecx, dword [esi + 0x7c]
mov dword [ecx], eax
mov ecx, dword [esi + 0x40]
add ecx, 0x10
mov dword [esi + 0xc0], ecx
mov ecx, dword [esi + 0x44]
add ecx, 0x12
mov dword [esi + 0xbc], ecx
xor ecx, ecx
cmp edx, eax
setne cl
mov eax, edx
mov edi, dword [esi + 0x88]
mov ebx, dword [esi + 0x48]
jmp dword [ecx*4 + 0x442e48]
mov eax, dword [esi + 0x50]
mov eax, dword [eax]
mov dword [esi + 0x10], 0x1c1d1e1f
mov dword [esi + 0x14], 0
mov dword [esi + 0x17], 0
mov dword [esi + 4], 0
mov ecx, dword [esi + 4]
cmp ecx, 0xa
ja 0x41fd86
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [esi + 4]
mov edx, dword [esi + 4]
movzx edx, byte [esi + edx + 0x10]
lea edi, [ecx + 0x79fb7784]
add ecx, 0x84
and ecx, edx
or edi, edx
sub edi, ecx
mov dword [esi], edi
mov ecx, dword [esi]
add cl, 0x64
mov edx, dword [esi + 4]
mov byte [esi + edx + 0x10], cl
inc dword [esi + 4]
mov ecx, dword [esi + 4]
cmp ecx, 0xb
jb 0x41fd50
mov ecx, dword [0x4488f4]
test ecx, ecx
je case.default.0x4205b3
mov edx, dword [esi + 0x10]
xor edi, edi
mov ebx, dword [0x4488f8]
nop
cmp dword [ebx + edi*8], 0x11081610
je 0x420580
inc edi
cmp ecx, edi
jne 0x41fda0
jmp case.default.0x4205b3
mov ecx, dword [esi + 0x80]
mov eax, dword [ecx]
add eax, 4
mov dword [ecx], eax
xor ecx, ecx
mov edx, dword [esi + 0x7c]
cmp eax, dword [edx]
setne cl
jmp dword [ecx*4 + 0x442e48]
mov eax, dword [eax]
mov ecx, dword [esi + 0x84]
mov dword [ecx], eax
mov edx, dword [esi + 0x34]
mov dword [edx], 0xb384b586
mov dword [edx + 4], 0xcf80b182
mov dword [edx + 8], 0xcbfccdfe
mov dword [edx + 0xc], 0xc7a0c9fa
mov word [edx + 0x10], 0xc5c6
mov dword [edx + 0x16], 0
mov dword [edx + 0x12], 0
mov dword [esi], 0
mov eax, dword [esi]
cmp eax, 0x19
ja 0x41fe65
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esi]
mov ecx, dword [esi]
movzx ecx, byte [edx + ecx]
lea edx, [eax + ecx]
add edx, 0x5fb1aab9
add eax, 0x5fb1aab9
and eax, ecx
add eax, eax
sub edx, eax
mov dword [esi + 0x10], edx
mov edx, dword [esi + 0x34]
mov eax, dword [esi + 0x10]
add al, 0xf1
mov ecx, dword [esi]
mov byte [edx + ecx], al
inc dword [esi]
mov eax, dword [esi]
cmp eax, 0x1a
jb 0x41fe30
mov eax, dword [esi + 0x84]
mov ecx, dword [eax]
movzx edx, word [ecx]
mov eax, edi
test dx, dx
je 0x41fe91
add ecx, 2
mov eax, edi
nop
nop
nop
nop
mov word [eax], dx
add eax, 2
movzx edx, word [ecx]
add ecx, 2
test dx, dx
jne 0x41fe80
mov word [eax], 0
mov ecx, dword [esi + 0x34]
movzx ecx, word [ecx]
test cx, cx
je 0x41fec1
mov edx, dword [esi + 0xb8]
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x41feb0
mov word [eax], 0
mov ecx, dword [esi + 0x90]
mov dword [ecx], eax
mov eax, dword [esi + 0x8c]
mov word [eax], 0x31
mov ax, 0x31
xor ecx, ecx
cmp ax, 0x35
setb cl
mov edx, dword [esi + 0x20]
jmp dword [ecx*4 + 0x442e50]
mov ecx, dword [esi + 0x90]
mov ecx, dword [ecx]
mov word [ecx - 2], ax
mov eax, dword [esi + 0x50]
push dword [eax]
push 0
push 0x20019
push edx
push edi
call fcn.0043b030
add esp, 0x14
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x442e58]
mov eax, dword [esi + 0x3c]
mov dword [eax], 0
mov dword [ebx], 0x800
mov eax, dword [esi + 0x28]
mov dword [eax], 0x400
mov eax, dword [esi + 0x58]
mov byte [eax], 0
xor edi, edi
mov ebx, dword [esi + 0x30]
jmp dword [0x442e60]
xor ecx, ecx
cmp ax, 0x35
setb cl
jmp dword [ecx*4 + 0x442e50]
jmp dword [0x442ea0]
mov eax, dword [esi + 0x20]
mov eax, dword [eax]
mov dword [esi + 0x10], 0x1c1d1e1f
lea ecx, [esi + 0x14]
mov dword [ecx + 3], 0
mov dword [ecx], 0
mov dword [esi + 4], 0
mov ecx, dword [esi + 4]
cmp ecx, 0xa
ja 0x41ffd6
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [esi + 4]
mov edx, dword [esi + 4]
movzx edx, byte [esi + edx + 0x10]
lea edi, [ecx + 0x79fb7784]
add ecx, 0x84
and ecx, edx
or edi, edx
sub edi, ecx
mov dword [esi], edi
mov ecx, dword [esi]
add cl, 0x64
mov edx, dword [esi + 4]
mov byte [esi + edx + 0x10], cl
inc dword [esi + 4]
mov ecx, dword [esi + 4]
cmp ecx, 0xb
jb 0x41ffa0
mov ecx, dword [0x4488f4]
test ecx, ecx
je case.0x41fd0c.22
mov edx, dword [esi + 0x10]
xor edi, edi
mov ebx, dword [0x4488f8]
nop
nop
nop
nop
nop
cmp dword [ebx + edi*8], 0x11081610
je 0x420000
inc edi
cmp ecx, edi
jne 0x41fff0
jmp case.0x41fd0c.22
mov ecx, dword [ebx + edi*8 + 4]
cmp ecx, edx
je case.0x41fd0c.22
push eax
push 1
push dword [0x4488fc]
push ecx
call fcn.00437c10
add esp, 0x10
jmp case.0x41fd0c.22
jmp dword [0x442eac]
mov eax, dword [esi + 0x20]
mov eax, dword [eax]
mov dword [esi + 0x10], 0x1c1d1e1f
mov dword [esi + 0x14], 0
mov dword [esi + 0x17], 0
mov dword [esi + 4], 0
mov ecx, dword [esi + 4]
cmp ecx, 0xa
ja 0x420086
nop
mov ecx, dword [esi + 4]
mov edx, dword [esi + 4]
movzx edx, byte [esi + edx + 0x10]
lea edi, [ecx + 0x79fb7784]
add ecx, 0x84
and ecx, edx
or edi, edx
sub edi, ecx
mov dword [esi], edi
mov ecx, dword [esi]
add cl, 0x64
mov edx, dword [esi + 4]
mov byte [esi + edx + 0x10], cl
inc dword [esi + 4]
mov ecx, dword [esi + 4]
cmp ecx, 0xb
jb 0x420050
mov ecx, dword [0x4488f4]
test ecx, ecx
je 0x420020
mov edx, dword [esi + 0x10]
xor edi, edi
mov ebx, dword [0x4488f8]
nop
nop
nop
nop
nop
cmp dword [ebx + edi*8], 0x11081610
je 0x4200c0
inc edi
cmp ecx, edi
jne 0x4200a0
jmp 0x420020
mov ecx, dword [ebx + edi*8 + 4]
cmp ecx, edx
je 0x420020
push eax
push 1
push dword [0x4488fc]
push ecx
call fcn.00437c10
add esp, 0x10
jmp 0x420020
mov edi, dword [esi + 0x88]
mov ebx, dword [esi + 0x48]
mov eax, dword [case.0x41fd0c.28]
mov ecx, dword [esi + 0x8c]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp eax
movzx eax, word [ecx]
inc eax
mov edx, dword [esi + 0x20]
jmp dword [0x442ec4]
mov word [ecx], ax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [ecx], ax
jmp dword [0x442ec8]
push dword [esi + 0x28]
push dword [esi + 0x24]
push ebx
push dword [esi + 0x48]
push dword [esi + 8]
push edi
mov eax, dword [esi + 0x20]
push dword [eax]
call fcn.0043b780
add esp, 0x1c
jmp dword [0x442e6c]
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x442e70]
mov eax, dword [esi + 0x58]
movzx ecx, byte [eax]
xor eax, eax
jmp dword [ecx*4 + 0x442e78]
xor ecx, ecx
mov eax, dword [esi + 0x30]
cmp dword [eax], 1
sete cl
xor eax, eax
jmp dword [ecx*4 + 0x442e80]
movzx eax, al
mov ebx, dword [esi + 8]
jmp dword [eax*4 + 0x442e88]
xor eax, eax
mov ecx, dword [esi + 0x30]
cmp dword [ecx], 3
sete al
mov edi, dword [esi + 0x44]
jmp dword [eax*4 + 0x442e90]
xor eax, eax
movzx eax, al
jmp dword [eax*4 + 0x442e98]
mov eax, dword [esi + 0x28]
mov edi, dword [eax]
mov eax, dword [esi + 0x2c]
mov ecx, dword [eax]
cmp edi, 2
jb 0x420278
shr edi, 1
lea eax, [edi - 1]
mov dword [esi + 0x54], eax
mov ebx, edi
and ebx, 3
mov edx, dword [esi + 0x24]
je 0x42020e
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
dec edi
mov dword [esi + 0xc], edi
movzx edi, word [edx]
xor eax, eax
test di, di
setne al
lea edx, [edx + eax*2]
mov word [ecx], di
mov edi, dword [esi + 0xc]
add ecx, 2
dec ebx
jne 0x4201f0
cmp dword [esi + 0x54], 3
jb 0x420278
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov dword [esi + 0xc], edi
movzx eax, word [edx]
xor ebx, ebx
test ax, ax
setne bl
mov word [ecx], ax
lea eax, [edx + ebx*2]
movzx edx, word [edx + ebx*2]
xor ebx, ebx
test dx, dx
setne bl
mov word [ecx + 2], dx
lea edx, [eax + ebx*2]
movzx eax, word [eax + ebx*2]
xor ebx, ebx
test ax, ax
setne bl
mov word [ecx + 4], ax
lea eax, [edx + ebx*2]
movzx edi, word [edx + ebx*2]
xor edx, edx
test di, di
setne dl
lea edx, [eax + edx*2]
mov word [ecx + 6], di
mov edi, dword [esi + 0xc]
add ecx, 8
add edi, 0xfffffffc
jne 0x420220
lea eax, [ecx + 2]
mov edx, dword [esi + 0x2c]
mov dword [edx], eax
mov word [ecx], 0xa
mov edx, dword [esi + 0x38]
movzx eax, byte [edx]
lea ecx, [eax + 1]
or eax, 2
cmp eax, ecx
setne byte [edx]
mov eax, dword [esi + 0x3c]
mov edi, dword [eax]
inc edi
mov dword [eax], edi
mov ebx, dword [esi + 0x30]
jmp dword [0x442e60]
mov edi, dword [esi + 0x40]
mov dword [edi], 0xb311b171
mov dword [edi + 4], 0xb729b517
mov dword [edi + 8], 0xab34a93d
mov dword [edi + 0xc], 0xafaead38
mov eax, dword [esi + 0xc0]
mov dword [eax + 3], 0
mov dword [eax], 0
mov dword [esi], 0
mov eax, dword [esi]
cmp eax, 0x16
mov ebx, dword [esi + 8]
ja 0x42031f
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esi]
mov ecx, dword [esi]
movzx ecx, byte [edi + ecx]
lea edx, [eax + 0x7d6f97c8]
add eax, 0xc8
and eax, ecx
or edx, ecx
sub edx, eax
mov dword [esi + 0x10], edx
mov eax, dword [esi + 0x10]
add al, 0x88
mov ecx, dword [esi]
mov byte [edi + ecx], al
inc dword [esi]
mov eax, dword [esi]
cmp eax, 0x17
jb 0x4202f0
movzx edi, word [edi]
mov eax, ebx
test di, di
je 0x420442
mov eax, ebx
mov ecx, ebx
mov edx, dword [esi + 0x40]
jmp 0x420357
add eax, 2
mov edx, dword [esi + 0x40]
mov ecx, eax
mov ebx, dword [esi + 8]
movzx edi, word [edx]
test di, di
je 0x420442
movzx ebx, word [ecx]
test bx, bx
je 0x42043d
cmp bx, di
jne 0x420340
add ecx, 2
add edx, 2
jmp 0x420348
mov dword [edi], 0x5bbb59a8
mov dword [edi + 4], 0x47d545d7
mov dword [edi + 8], 0x43d541df
mov dword [edi + 0xc], 0x4fa24dde
mov word [edi + 0x10], 0x4948
mov eax, dword [esi + 0xbc]
mov dword [eax + 7], 0
mov dword [eax + 4], 0
mov dword [eax], 0
mov dword [esi], 0
mov eax, dword [esi]
cmp eax, 0x1c
ja 0x4203f1
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esi]
mov ecx, dword [esi]
movzx ecx, byte [edi + ecx]
lea edx, [eax + 0x55a9ff8c]
and edx, ecx
add eax, ecx
add eax, 0x55a9ff8c
add edx, edx
sub eax, edx
mov dword [esi + 0x10], eax
mov eax, dword [esi + 0x10]
add al, 0x2c
mov ecx, dword [esi]
mov byte [edi + ecx], al
inc dword [esi]
mov eax, dword [esi]
cmp eax, 0x1d
jb 0x4203c0
movzx edi, word [edi]
mov eax, ebx
test di, di
je 0x420538
mov eax, ebx
mov ecx, ebx
mov edx, dword [esi + 0x44]
jmp 0x420424
add eax, 2
mov edx, dword [esi + 0x44]
mov ecx, eax
movzx edi, word [edx]
test di, di
je 0x420538
movzx ebx, word [ecx]
test bx, bx
je 0x420536
cmp bx, di
jne 0x420410
add ecx, 2
add edx, 2
jmp 0x420418
xor eax, eax
mov ebx, dword [esi + 8]
xor ecx, ecx
test eax, eax
setne cl
jmp dword [ecx*4 + 0x442e88]
mov eax, dword [esi + 0x28]
mov edi, dword [eax]
mov eax, dword [esi + 0x2c]
mov ecx, dword [eax]
cmp edi, 2
jb 0x420508
shr edi, 1
lea eax, [edi - 1]
mov dword [esi + 0x54], eax
mov eax, edi
and eax, 3
mov edx, dword [esi + 0x24]
je 0x42049e
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
dec edi
mov dword [esi + 0xc], edi
movzx edi, word [edx]
xor ebx, ebx
test di, di
setne bl
lea edx, [edx + ebx*2]
mov word [ecx], di
mov edi, dword [esi + 0xc]
add ecx, 2
dec eax
jne 0x420480
cmp dword [esi + 0x54], 3
jb 0x420508
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov dword [esi + 0xc], edi
movzx eax, word [edx]
xor ebx, ebx
test ax, ax
setne bl
mov word [ecx], ax
lea eax, [edx + ebx*2]
movzx edx, word [edx + ebx*2]
xor ebx, ebx
test dx, dx
setne bl
mov word [ecx + 2], dx
lea edx, [eax + ebx*2]
movzx eax, word [eax + ebx*2]
xor ebx, ebx
test ax, ax
setne bl
mov word [ecx + 4], ax
lea eax, [edx + ebx*2]
movzx edi, word [edx + ebx*2]
xor edx, edx
test di, di
setne dl
lea edx, [eax + edx*2]
mov word [ecx + 6], di
mov edi, dword [esi + 0xc]
add ecx, 8
add edi, 0xfffffffc
jne 0x4204b0
lea eax, [ecx + 2]
mov edx, dword [esi + 0x2c]
mov dword [edx], eax
mov word [ecx], 0x3a
add ecx, 4
mov dword [edx], ecx
mov word [eax], 0x20
mov eax, dword [esi + 0x58]
mov byte [eax], 1
mov eax, dword [esi + 0x3c]
mov edi, dword [eax]
inc edi
mov dword [eax], edi
mov ebx, dword [esi + 0x30]
jmp dword [0x442e60]
xor eax, eax
xor ecx, ecx
test eax, eax
setne cl
jmp dword [ecx*4 + 0x442e98]
mov eax, dword [esi + 0x3c]
mov edi, dword [eax]
inc edi
mov dword [eax], edi
mov ebx, dword [esi + 0x30]
jmp dword [0x442e60]
push dword [esi + 0x28]
push dword [esi + 0x24]
push ebx
push dword [esi + 0x48]
push dword [esi + 8]
push edi
mov eax, dword [esi + 0x20]
push dword [eax]
call fcn.0043b780
add esp, 0x1c
jmp case.0x41fd0c.6
mov ecx, dword [ebx + edi*8 + 4]
cmp ecx, edx
je case.default.0x4205b3
push eax
push 1
push dword [0x4488fc]
push ecx
call fcn.00437c10
add esp, 0x10
nop
nop
nop
nop
nop
nop
mov eax, dword [esi + 0x78]
mov edi, dword [eax]
xor eax, eax
test edi, edi
sete al
xor ecx, ecx
mov edx, 1
jmp dword [eax*4 + 0x442ed0]
push edi
call fcn.00409140
add esp, 4
xor ecx, ecx
mov edx, 1
jmp dword [edx*4 + 0x442ed8]
jmp dword [ecx*4 + 0x442ee0]
mov eax, dword [case.0x41f16d.1]
nop
nop
nop
jmp eax
mov eax, dword [case.0x41f16d.5]
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp eax
xor eax, eax
jmp 0x420837
movzx eax, word [esi + 0xc8]
test ax, ax
je 0x420658
mov dword [esi + 8], 0
lea ebx, [esi + 0xc8]
jmp 0x42062f
add dword [esi + 8], edx
movzx eax, word [ebx + 2]
add ebx, 2
test ax, ax
je 0x42065f
cmp ebx, dword [esi + 0xc]
jae 0x42065f
movzx edi, ax
xor eax, eax
cmp edi, 0x800
setb cl
mov edx, 1
cmp edi, 0x80
jb 0x420620
mov al, cl
xor eax, 3
mov edx, eax
jmp 0x420620
mov dword [esi + 8], 0
mov ebx, dword [esi + 8]
mov eax, ebx
and eax, 1
mov ecx, ebx
xor ecx, 1
lea eax, [ecx + eax*2]
push eax
call fcn.00409130
add esp, 4
mov edi, eax
mov eax, dword [esi + 0x60]
mov dword [eax], edi
mov dword [esi + 0x24], edi
test ebx, ebx
jle 0x420741
mov eax, dword [esi + 8]
mov edi, dword [esi + 0x24]
lea ecx, [eax + edi]
inc ecx
mov dword [esi + 0x28], ecx
mov ecx, edi
add ecx, eax
mov dword [esi + 0x20], ecx
lea edx, [esi + 0xc8]
jmp 0x4206c5
mov byte [edi], al
mov ebx, 1
add edx, 2
add edi, ebx
cmp edi, dword [esi + 0x20]
jae 0x420741
cmp edx, dword [esi + 0xc]
jae 0x420741
movzx eax, word [edx]
test ax, ax
je 0x420741
cmp ax, 0x7f
jbe 0x4206b0
mov ecx, edi
not ecx
add ecx, dword [esi + 0x28]
cmp ecx, 2
jb 0x420710
movzx ebx, ax
cmp ebx, 0x7ff
ja 0x420710
mov ecx, eax
shr ecx, 6
add cl, 0xc0
mov byte [edi], cl
and al, 0x3f
or al, 0x80
mov byte [edi + 1], al
mov ebx, 2
jmp 0x4206b7
xor ebx, ebx
cmp ecx, 3
jb 0x4206b7
movzx ebx, ax
mov ecx, ebx
shr ecx, 0xc
or cl, 0xe0
mov byte [edi], cl
shr ebx, 6
and bl, 0x3f
or bl, 0x80
mov byte [edi + 1], bl
and al, 0x3f
or al, 0x80
mov byte [edi + 2], al
mov ebx, 3
jmp 0x4206b7
mov byte [edi], 0
mov edi, dword [esi + 0x98]
mov dword [edi], 0xc7c4c5e9
mov dword [edi + 4], 0x43cfccc5
mov dword [edi + 8], 0x46bebcb9
mov dword [edi + 0xc], 0x4b4398fb
mov dword [edi + 0x10], 0xb6b5b4b2
mov dword [edi + 0x14], 0xae4e91f3
mov dword [edi + 0x18], 0xa0a8aaa4
mov dword [edi + 0x1c], 0x5f54eb57
mov word [edi + 0x20], 0xd55a
mov dword [edi + 0x26], 0
mov dword [edi + 0x22], 0
mov dword [esi], 0
mov eax, dword [esi]
cmp eax, 0x29
ja 0x4207ef
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esi]
mov ecx, dword [esi]
movzx ecx, byte [edi + ecx]
lea edx, [eax + 0xb9]
and edx, ecx
add eax, ecx
add edx, edx
sub eax, edx
add eax, 0x14a8dfb9
mov dword [esi + 0x10], eax
mov eax, dword [esi + 0x10]
mov ecx, eax
xor ecx, 0xf0
and eax, 0x70
lea eax, [ecx + eax*2]
inc al
mov ecx, dword [esi]
mov byte [edi + ecx], al
inc dword [esi]
mov eax, dword [esi]
cmp eax, 0x2a
jb 0x4207b0
mov ecx, dword [ebp + 8]
push dword [esi + 8]
push dword [esi + 0x24]
push edi
call fcn.00409a30
mov ebx, eax
mov eax, dword [esi + 0x38]
mov byte [eax], bl
mov eax, dword [esi + 0x60]
mov eax, dword [eax]
xor ecx, ecx
test eax, eax
sete cl
jmp dword [ecx*4 + 0x442ef8]
push eax
call fcn.00409140
add esp, 4
mov eax, dword [case.0x420811.1]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp eax
test bl, bl
setne al
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
xor eax, eax
mov edi, dword [esp + 0xc]
cmp esi, edi
setne al
xor ebx, ebx
jmp dword [eax*4 + 0x443698]
movzx ecx, word [edi]
xor ebx, ebx
test cx, cx
je 0x42142d
mov eax, edi
jmp 0x421310
xor edx, edx
test ecx, ecx
sete dl
mov eax, 0x20119
xor ecx, ecx
jmp dword [edx*4 + 0x443690]
jmp dword [ecx*4 + 0x4435f8]
mov dword [esp + 0x58], 0xab14ad08
mov dword [esp + 0x5c], 0x97dda9e5
mov dword [esp + 0x60], 0x932d95dd
mov dword [esp + 0x64], 0x9f20912c
mov dword [esp + 0x68], 0x9b3e9d25
mov dword [esp + 0x6c], 0x87c7992d
mov dword [esp + 0x70], 0x83ca85cb
mov dword [esp + 0x74], 0x8f3c81c9
mov dword [esp + 0x78], 0x8b2e8dc1
mov dword [esp + 0x7c], 0xf7458937
mov dword [esp + 0x80], 0xf34ef5be
mov dword [esp + 0x84], 0xffbff14b
mov dword [esp + 0x88], 0xfbb7fd42
mov dword [esp + 0x8c], 0xe753f95c
mov dword [esp + 0x90], 0xe34de54d
mov dword [esp + 0x94], 0xef7de17e
mov dword [esp + 0x98], 0xeb79ed73
mov dword [esp + 0x9c], 0xd74ae942
mov dword [esp + 0xa0], 0xd369d570
mov dword [esp + 0xa4], 0xdf4cd179
mov dword [esp + 0xa8], 0xdb49dd70
mov dword [esp + 0xac], 0xc759d943
mov dword [esp + 0xb0], 0xc38dc560
mov dword [esp + 0xb4], 0xcf50c15d
mov dword [esp + 0xb8], 0xcb67cd52
mov dword [esp + 0xbc], 0x37aac95a
mov dword [esp + 0xc0], 0x339f358e
mov dword [esp + 0xc4], 0x3fa131ae
mov dword [esp + 0xc8], 0x3ba93d95
mov dword [esp + 0xcc], 0x278239aa
mov dword [esp + 0xd0], 0x23b02599
mov dword [esp + 0xd4], 0x2fbc2189
mov dword [esp + 0xd8], 0x2bb62db3
mov dword [esp + 0xdc], 0x17822989
mov dword [esp + 0xe0], 0x13121580
mov dword [esp + 0xe8], 0
mov dword [esp + 0xe4], 0
mov dword [esp], 0
mov ecx, dword [esp]
cmp ecx, 0x93
ja 0x420e2a
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [esp]
mov edx, dword [esp]
movzx edx, byte [esp + edx + 0x58]
lea edi, [ecx + edx]
add edi, 0xa56af49a
add ecx, 0x9a
and ecx, edx
add ecx, ecx
mov edx, ecx
xor edx, edi
not ecx
and ecx, edi
add ecx, ecx
sub ecx, edx
mov dword [esp + 0x28], ecx
mov ecx, dword [esp + 0x28]
add cl, 0xca
mov edx, dword [esp]
mov byte [esp + edx + 0x58], cl
inc dword [esp]
mov ecx, dword [esp]
cmp ecx, 0x94
jb 0x420de0
lea ecx, [esp + 0x14]
lea edx, [esp + 0x58]
push 0
push 0
push eax
push ecx
push edx
call fcn.0043b030
add esp, 0x14
shr eax, 0x1f
mov ecx, 4
jmp dword [eax*4 + 0x443600]
lea eax, [esp + 0x54]
lea ecx, [esp + 0x10]
push 0
push 0
push 0
push 0
push eax
push ecx
push 0
push 0
push dword [esp + 0x34]
call fcn.0043b450
add esp, 0x24
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x443608]
jmp 0x4211a6
mov ecx, dword [esp + 0x10]
mov eax, ecx
or eax, 0x104
mov edx, ecx
and edx, 0x104
imul eax, edx
and ecx, 0x7ffffefb
xor edx, 0x104
imul edx, ecx
add edx, eax
mov esi, dword [esp + 8]
lea eax, [esi + edx*2]
push eax
push dword [esp + 0x10]
call fcn.00437aa0
add esp, 8
mov dword [esp + 0xc], eax
lea esi, [eax + esi*2]
xor ebx, ebx
xor eax, eax
cmp ebx, dword [esp + 0x10]
setb al
jmp dword [eax*4 + 0x443610]
push edi
call fcn.00409140
add esp, 4
mov eax, ebx
and eax, 1
xor ebx, 1
lea ebx, [ebx + eax*2]
xor eax, eax
cmp ebx, dword [esp + 0x10]
setb al
jmp dword [eax*4 + 0x443610]
mov edi, dword [esp + 0x54]
mov eax, edi
inc eax
jns 0x420f30
mov eax, 0xffffffff
jmp 0x420f36
lea eax, [edi + edi]
add eax, 2
push eax
call fcn.00409130
add esp, 4
mov dword [esp + 0x50], edi
mov edi, eax
lea eax, [esp + 0x50]
push eax
push edi
push ebx
push dword [esp + 0x20]
call fcn.0043b180
add esp, 0x10
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x443618]
jmp dword [0x443630]
lea eax, [esp + 0x24]
push dword [esp + 0x14]
push 0
push 0x20019
push eax
push edi
call fcn.0043b030
add esp, 0x14
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x443620]
jmp dword [0x443630]
mov dword [esp + 8], edi
mov dword [esp + 0x4c], 0x800
mov dword [esp + 0x28], 0x4bcb5592
mov dword [esp + 0x2c], 0x4fd849df
mov dword [esp + 0x30], 0x43ab4dd2
mov dword [esp + 0x34], 0x47b241cd
mov dword [esp + 0x38], 0x7bd745a1
mov dword [esp + 0x3c], 0x7f7879e1
mov dword [esp + 0x40], 0
mov dword [esp + 4], 0
mov eax, dword [esp + 4]
cmp eax, 0x1b
ja 0x421044
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp + 4]
mov ecx, dword [esp + 4]
movzx edx, byte [esp + ecx + 0x28]
lea ecx, [eax + 0x38d7668d]
mov edi, ecx
xor edi, edx
and ecx, edx
add eax, 0x8d
and eax, edx
add eax, ecx
sub edi, eax
lea eax, [edi + ecx*2]
mov dword [esp], eax
mov eax, dword [esp]
add al, 0x25
mov ecx, dword [esp + 4]
mov byte [esp + ecx + 0x28], al
inc dword [esp + 4]
mov eax, dword [esp + 4]
cmp eax, 0x1c
jb 0x421000
lea eax, [esp + 0x4c]
lea ecx, [esp + 0x28]
push eax
lea eax, [esp + 0x5c]
push eax
push 0
push ecx
push dword [esp + 0x34]
call fcn.0043bad0
add esp, 0x14
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x443628]
jmp 0x421099
movzx eax, word [esp + 0x58]
test ax, ax
je 0x421091
lea ecx, [esp + 0x5a]
nop
nop
nop
mov word [esi], ax
add esi, 2
movzx eax, word [ecx]
add ecx, 2
test ax, ax
jne 0x421080
mov word [esi], 0xa
add esi, 2
mov eax, dword [esp + 0x24]
mov dword [esp + 0x18], eax
mov dword [esp + 0x28], 0x20212e2f
lea eax, [esp + 0x2c]
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov dword [eax], 0
mov dword [esp + 4], 0
mov eax, dword [esp + 4]
cmp eax, 0xf
ja 0x421127
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp + 4]
mov ecx, dword [esp + 4]
movzx ecx, byte [esp + ecx + 0x28]
lea edx, [eax - 0x13b63b5a]
and edx, ecx
add eax, ecx
add eax, 0xec49c4a6
add edx, edx
sub eax, edx
mov dword [esp], eax
mov eax, dword [esp]
mov ecx, eax
or ecx, 0x75
and eax, 0x75
add eax, ecx
inc al
mov ecx, dword [esp + 4]
mov byte [esp + ecx + 0x28], al
inc dword [esp + 4]
mov eax, dword [esp + 4]
cmp eax, 0x10
jb 0x4210e0
mov ecx, dword [0x4488f4]
test ecx, ecx
je 0x421170
mov edx, dword [esp + 0x28]
xor edi, edi
mov eax, dword [0x4488f8]
nop
nop
nop
nop
cmp dword [eax + edi*8], 0x11081610
je 0x421150
inc edi
cmp ecx, edi
jne 0x421140
jmp 0x421170
mov eax, dword [eax + edi*8 + 4]
cmp eax, edx
je 0x421170
push dword [esp + 0x18]
push 1
push dword [0x4488fc]
push eax
call fcn.00437c10
add esp, 0x10
nop
nop
nop
mov edi, dword [esp + 8]
jmp dword [0x443630]
mov eax, ebx
and eax, 1
xor ebx, 1
lea ebx, [ebx + eax*2]
xor eax, eax
cmp ebx, dword [esp + 0x10]
setb al
jmp dword [eax*4 + 0x443610]
mov word [esi], 0
mov eax, esi
sub eax, dword [esp + 0xc]
sar eax, 1
mov dword [esp + 8], eax
mov eax, dword [esp + 0x14]
mov dword [esp + 0x58], 0x20212e2f
lea ecx, [esp + 0x5c]
mov dword [ecx + 8], 0
mov dword [ecx + 4], 0
mov dword [ecx], 0
mov dword [esp], 0
mov ecx, dword [esp]
cmp ecx, 0xf
ja 0x421225
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [esp]
mov edx, dword [esp]
movzx edx, byte [esp + edx + 0x58]
lea edi, [ecx - 0x13b63b5a]
and edi, edx
add ecx, edx
add ecx, 0xec49c4a6
add edi, edi
sub ecx, edi
mov dword [esp + 0x28], ecx
mov ecx, dword [esp + 0x28]
mov edx, ecx
or edx, 0x75
and ecx, 0x75
add ecx, edx
inc cl
mov edx, dword [esp]
mov byte [esp + edx + 0x58], cl
inc dword [esp]
mov ecx, dword [esp]
cmp ecx, 0x10
jb 0x4211e0
mov ecx, dword [0x4488f4]
test ecx, ecx
je case.default.0x421287
mov edx, dword [esp + 0x58]
xor ebx, ebx
mov edi, dword [0x4488f8]
nop
nop
nop
nop
nop
cmp dword [edi + ebx*8], 0x11081610
je 0x421250
inc ebx
cmp ecx, ebx
jne 0x421240
jmp case.default.0x421287
mov ecx, dword [edi + ebx*8 + 4]
cmp ecx, edx
je case.default.0x421287
push eax
push 1
push dword [0x4488fc]
push ecx
call fcn.00437c10
add esp, 0x10
nop
nop
nop
nop
nop
nop
lea eax, [esp + 0x58]
push eax
call fcn.0043a5a0
add esp, 4
movzx edx, al
xor ecx, ecx
mov eax, 1
jmp dword [edx*4 + 0x443638]
jmp dword [0x443648]
xor edx, edx
cmp dword [esp + 0x58], 1
sete dl
jmp dword [edx*4 + 0x443650]
jmp dword [eax*4 + 0x443658]
xor ecx, ecx
jmp dword [0x44366c]
mov eax, dword [case.0x420e49.1]
nop
nop
nop
jmp eax
xor eax, eax
cmp ecx, 4
setl al
jmp dword [eax*4 + 0x443680]
xor edx, edx
cmp ecx, 4
sete dl
mov eax, 0x20119
xor ecx, ecx
jmp dword [edx*4 + 0x443688]
mov ecx, 2
xor eax, eax
jmp dword [eax*4 + 0x443658]
mov ebx, edx
add ebx, edi
movzx ecx, word [eax + 2]
add eax, 2
test cx, cx
je 0x421345
test esi, esi
je 0x421318
cmp eax, esi
jae 0x421345
mov edx, ebx
movzx ebx, cx
xor ecx, ecx
cmp ebx, 0x800
setb byte [esp + 8]
mov edi, 1
cmp ebx, 0x80
jb 0x421300
movzx ebx, byte [esp + 8]
mov cl, bl
xor ecx, 3
mov edi, ecx
jmp 0x421300
lea edi, [ebx + 1]
push edi
call fcn.00409130
add esp, 4
test ebx, ebx
mov dword [esp + 0x20], eax
jle 0x42143f
lea ecx, [eax + ebx]
mov dword [esp + 8], ecx
add edi, eax
mov dword [esp + 0x18], edi
mov edx, dword [esp + 0xc]
mov edi, eax
mov dword [esp + 0x48], ebx
jmp 0x421396
mov byte [edi], cl
mov eax, 1
add edx, 2
add edi, eax
cmp edi, dword [esp + 8]
jae 0x421441
test esi, esi
je 0x4213a2
cmp edx, esi
jae 0x421441
movzx ecx, word [edx]
test cx, cx
je 0x421441
cmp cx, 0x7f
jbe 0x421380
mov eax, edi
not eax
add eax, dword [esp + 0x18]
cmp eax, 2
jb 0x4213f0
movzx ebx, cx
cmp ebx, 0x7ff
mov ebx, dword [esp + 0x48]
ja 0x4213f0
mov eax, ecx
shr eax, 6
add al, 0xc0
mov byte [edi], al
and cl, 0x3f
or cl, 0x80
mov byte [edi + 1], cl
mov eax, 2
jmp 0x421387
cmp eax, 3
mov eax, 0
jb 0x421387
movzx eax, cx
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x1c]
shr eax, 0xc
or al, 0xe0
mov byte [edi], al
mov eax, dword [esp + 0x1c]
shr eax, 6
and al, 0x3f
or al, 0x80
mov byte [edi + 1], al
and cl, 0x3f
or cl, 0x80
mov byte [edi + 2], cl
mov eax, 3
jmp 0x421387
push 1
call fcn.00409130
add esp, 4
mov edi, eax
mov dword [esp + 0x20], eax
jmp 0x421441
mov edi, eax
mov ecx, dword [ebp + 8]
mov byte [edi], 0
mov dword [esp + 0x58], 0x77646e53
mov dword [esp + 0x5c], 0x62746473
mov dword [esp + 0x60], 0x7f727da6
mov byte [esp + 0x64], 0x8c
mov dword [esp + 0x65], 0
mov dword [esp + 0x69], 0
mov byte [esp + 0x6d], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0x15
ja 0x4214d5
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp]
mov edx, dword [esp]
movzx edx, byte [esp + edx + 0x58]
lea esi, [eax + edx]
add esi, 0xbd2bd4c0
add eax, 0xc0
and eax, edx
add eax, eax
mov edx, eax
xor edx, esi
not eax
and eax, esi
add eax, eax
sub eax, edx
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x28]
add al, 0xc0
mov edx, dword [esp]
mov byte [esp + edx + 0x58], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0x16
jb 0x421490
lea eax, [esp + 0x58]
push ebx
mov esi, dword [esp + 0x24]
push esi
push eax
call fcn.00409a30
mov ebx, eax
mov edi, dword [esp + 0xc]
jmp dword [0x4436a0]
push esi
call fcn.00409140
add esp, 4
push edi
call fcn.00435fb0
add esp, 4
mov eax, ebx
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
int3
lea ecx, [esp + 0x58]
push 0x410
call fcn.00436340
not eax
shr eax, 0x1f
xor ebx, ebx
jmp dword [eax*4 + 0x4436b0]
mov dword [esp + 0x68], 0xb2dba0b5
mov dword [esp + 0x6c], 0x58522d48
mov dword [esp + 0x70], 0x4c554b29
mov dword [esp + 0x74], 0x375e4625
mov dword [esp + 0x78], 0x58232a36
mov dword [esp + 0x7c], 0x5f3c363d
mov dword [esp + 0x80], 0x5a513e52
mov dword [esp + 0x84], 0x563f542b
mov dword [esp + 0x88], 0x3628262a
mov dword [esp + 0x8c], 0x6e0b3519
mov dword [esp + 0x90], 0xc3320909
mov dword [esp + 0x94], 0
mov dword [esp + 0x98], 0
mov byte [esp + 0x9c], 0
mov dword [esp + 0xc], 0
mov eax, dword [esp + 0xc]
cmp eax, 0x34
ja 0x421b96
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0xc]
movzx ecx, byte [esp + ecx + 0x68]
lea edx, [eax + 0x28934e7c]
lea esi, [eax + 0x7c]
or edx, esi
and edx, ecx
and esi, ecx
add esi, edx
add eax, ecx
add eax, 0x28934e7c
sub eax, esi
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x40]
add al, 0x9c
mov ecx, dword [esp + 0xc]
mov byte [esp + ecx + 0x68], al
inc dword [esp + 0xc]
mov eax, dword [esp + 0xc]
cmp eax, 0x35
jb 0x421b50
lea eax, [esp + 0xc]
lea ecx, [esp + 0x58]
push 0
push 0x2b
push edi
push eax
call fcn.00436910
mov ebx, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov eax, dword [case.0x421287.35]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp eax
xor eax, eax
cmp ebx, ecx
sete al
jmp dword [eax*4 + 0x4436c8]
mov eax, ecx
sub eax, ebx
sar eax, 2
imul eax, eax, 0x421
push eax
mov dword [esp + 0x30], ecx
call fcn.00409130
add esp, 4
mov dword [esp + 0x30], 0
xor ecx, ecx
cmp ebx, dword [esp + 0x2c]
setne cl
mov dword [esp + 0x54], eax
mov dword [esp + 0x34], eax
jmp dword [ecx*4 + 0x4436d0]
mov ebx, dword [esp + 0x30]
mov eax, ebx
and al, 1
movzx eax, al
jmp dword [eax*4 + 0x443788]
mov esi, dword [esp + 0x54]
jmp dword [0x443790]
and bl, 1
jmp dword [0x44379c]
add ebx, 4
xor eax, eax
cmp ebx, edx
setne al
jmp dword [eax*4 + 0x4436d0]
mov esi, dword [ebx]
push 0x400
push 0
push edi
call fcn.004092c0
add esp, 0xc
lea eax, [esp + 0x40]
lea ecx, [esp + 0x58]
push eax
push 0x400
push edi
push esi
call fcn.00436790
xor ecx, ecx
cmp eax, 0xc0000000
setae cl
jmp dword [ecx*4 + 0x4436d8]
xor eax, eax
cmp dword [esp + 0x40], 0
sete al
jmp dword [eax*4 + 0x4436e0]
mov eax, 1
mov edx, dword [esp + 0x2c]
jmp dword [eax*4 + 0x4436e8]
xor eax, eax
mov edx, dword [esp + 0x2c]
jmp dword [eax*4 + 0x4436e8]
mov byte [esp + 0x467], 0
movzx eax, byte [esp + 0x68]
xor esi, esi
test al, al
je 0x421ce1
mov ecx, edi
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp al, 0x2e
je 0x421cdf
movzx eax, byte [ecx + 1]
inc ecx
test al, al
jne 0x421cd0
jmp 0x421ce1
mov esi, ecx
xor eax, eax
test esi, esi
setne al
jmp dword [eax*4 + 0x4436f0]
jmp dword [0x4436fc]
inc esi
jmp case.0x421ce8.3
jmp dword [0x443704]
mov eax, esi
inc esi
mov dword [esp + 8], eax
movzx eax, byte [eax + 1]
xor ecx, ecx
test al, al
je 0x421d00
mov ecx, esi
nop
nop
nop
nop
nop
nop
nop
cmp al, 0x2e
je 0x421d00
movzx eax, byte [ecx + 1]
inc ecx
test al, al
jne 0x421d20
xor ecx, ecx
jmp 0x421d00
xor eax, eax
test ecx, ecx
setne al
jmp dword [eax*4 + 0x443708]
mov dword [esp + 0x64], ebx
jmp dword [0x443714]
mov dword [esp + 0x24], ecx
mov edx, ecx
sub edx, esi
mov eax, edx
xor eax, 0xfffffffe
mov ecx, edx
and ecx, 0xfffffffe
lea eax, [eax + ecx*2]
lea ecx, [edx + edx*2]
shr ecx, 2
cmp byte [esi + eax + 1], 0x3d
mov eax, dword [esp + 8]
mov dword [esp + 0x1c], edx
je 0x421d88
cmp byte [eax + edx], 0x2e
jne 0x421d89
dec ecx
movzx eax, byte [edx + esi - 2]
cmp eax, 0x3d
je 0x421d98
cmp eax, 0x2e
jne 0x421d99
dec ecx
mov dword [esp + 0x38], ecx
lea eax, [ecx + 1]
push eax
call fcn.00409130
add esp, 4
mov dword [esp], eax
mov dword [esp + 0x3c], esi
cmp dword [esp + 0x24], esi
je 0x421eb0
xor edi, edi
mov esi, 2
jmp 0x421de2
mov edx, dword [esp + 0x28]
nop
nop
nop
nop
nop
nop
nop
nop
nop
lea eax, [esi + 4]
add esi, 2
mov edi, edx
cmp esi, ecx
mov esi, eax
jae 0x421eb0
mov ebx, dword [esp + 8]
movzx eax, byte [ebx + esi - 1]
push eax
call fcn.004180b0
add esp, 4
mov byte [esp + 4], al
movzx eax, byte [ebx + esi]
push eax
call fcn.004180b0
add esp, 4
mov bh, al
movzx ecx, byte [esp + 4]
shl cl, 2
shr al, 4
and al, 3
or al, cl
mov ecx, dword [esp]
mov byte [ecx + edi], al
lea edx, [edi + 1]
mov ecx, dword [esp + 0x1c]
cmp esi, ecx
jae 0x421dd0
mov dword [esp + 4], edi
mov eax, dword [esp + 8]
movzx eax, byte [eax + esi + 1]
push eax
mov edi, edx
call fcn.004180b0
mov edx, edi
mov ecx, dword [esp + 0x20]
add esp, 4
cmp al, 0x40
je 0x421dd0
mov bl, al
shl bh, 4
shr al, 2
and al, 0xf
or al, bh
mov edi, dword [esp + 4]
lea edx, [edi + 2]
mov dword [esp + 0x28], edx
mov edx, dword [esp]
mov byte [edx + edi + 1], al
lea eax, [esi + 1]
cmp eax, ecx
jae 0x421dc3
mov eax, dword [esp + 8]
movzx eax, byte [eax + esi + 2]
push eax
call fcn.004180b0
mov ecx, dword [esp + 0x20]
add esp, 4
cmp al, 0x40
mov edx, dword [esp + 0x28]
je 0x421dd0
shl bl, 6
add al, bl
mov edx, dword [esp]
mov edi, dword [esp + 4]
mov byte [edx + edi + 2], al
add edi, 3
mov edx, edi
jmp 0x421dd0
mov eax, dword [esp + 0x38]
mov ecx, dword [esp]
mov byte [ecx + eax], 0
push ecx
call fcn.00401f20
add esp, 4
mov esi, dword [esp + 0x3c]
mov ecx, dword [esp + 0x24]
mov edx, ecx
xor ecx, esi
mov eax, esi
not eax
mov dword [esp + 0x24], edx
and eax, edx
add eax, eax
sub eax, ecx
mov ecx, eax
xor ecx, 0xfffffffe
mov edx, eax
and edx, 0xfffffffe
lea ecx, [ecx + edx*2]
lea edx, [eax + eax*2]
shr edx, 2
cmp byte [esi + ecx + 1], 0x3d
mov ecx, dword [esp + 8]
je 0x421f02
cmp byte [ecx + eax], 0x2e
jne 0x421f03
dec edx
movzx eax, byte [eax + esi - 2]
cmp eax, 0x3d
je 0x421f12
cmp eax, 0x2e
jne 0x421f13
dec edx
mov dword [esp + 0x38], edx
lea eax, [edx + 1]
push eax
call fcn.00409130
add esp, 4
mov dword [esp], eax
mov edx, dword [esp + 0x24]
mov dword [esp + 0x3c], esi
sub edx, esi
je 0x422030
xor edi, edi
mov esi, 2
mov dword [esp + 0x1c], edx
jmp 0x421f62
mov ecx, dword [esp + 0x28]
nop
nop
nop
nop
nop
nop
nop
nop
nop
lea eax, [esi + 4]
add esi, 2
mov edi, ecx
cmp esi, edx
mov esi, eax
jae 0x422030
mov ebx, dword [esp + 8]
movzx eax, byte [ebx + esi - 1]
push eax
call fcn.004180b0
add esp, 4
mov byte [esp + 4], al
movzx eax, byte [ebx + esi]
push eax
call fcn.004180b0
mov edx, dword [esp + 0x20]
add esp, 4
mov bh, al
movzx ecx, byte [esp + 4]
shl cl, 2
shr al, 4
and al, 3
or al, cl
mov ecx, dword [esp]
mov byte [ecx + edi], al
lea ecx, [edi + 1]
cmp esi, edx
jae 0x421f50
mov dword [esp + 4], edi
mov eax, dword [esp + 8]
movzx eax, byte [eax + esi + 1]
push eax
mov edi, ecx
call fcn.004180b0
mov ecx, edi
mov edx, dword [esp + 0x20]
add esp, 4
cmp al, 0x40
je 0x421f50
mov bl, al
shl bh, 4
shr al, 2
and al, 0xf
or al, bh
mov edi, dword [esp + 4]
lea ecx, [edi + 2]
mov dword [esp + 0x28], ecx
mov ecx, dword [esp]
mov byte [ecx + edi + 1], al
lea eax, [esi + 1]
cmp eax, edx
jae 0x421f43
mov eax, dword [esp + 8]
movzx eax, byte [eax + esi + 2]
push eax
call fcn.004180b0
mov edx, dword [esp + 0x20]
add esp, 4
cmp al, 0x40
mov ecx, dword [esp + 0x28]
je 0x421f50
shl bl, 6
add al, bl
mov ecx, dword [esp]
mov edi, dword [esp + 4]
mov byte [ecx + edi + 2], al
add edi, 3
mov ecx, edi
jmp 0x421f50
mov eax, dword [esp + 0x38]
mov ecx, dword [esp]
mov byte [ecx + eax], 0
push ecx
call fcn.00401f20
add esp, 4
mov edi, dword [esp + 0x34]
mov esi, dword [esp + 0x3c]
mov ecx, dword [esp + 0x24]
jmp dword [0x44371c]
mov ebx, eax
jmp dword [0x443720]
push dword [esp]
call fcn.00409140
add esp, 4
push ebx
call fcn.004029a0
add esp, 4
xor ecx, ecx
test eax, eax
setne cl
mov edx, dword [esp + 0x30]
jmp dword [ecx*4 + 0x443728]
mov dword [esp + 0x40], 0x53f2eeeb
lea ecx, [esp + 0x44]
mov dword [ecx + 7], 0
mov dword [ecx + 4], 0
mov dword [ecx], 0
mov dword [esp + 0x20], 0
mov ecx, dword [esp + 0x20]
cmp ecx, 0xe
ja case.0x4205b3.110
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x20]
movzx edx, byte [esp + edx + 0x40]
lea esi, [ecx + edx]
add esi, 0x8ee07033
add ecx, 0x8ee07033
and ecx, edx
add ecx, ecx
sub esi, ecx
mov dword [esp + 0x18], esi
mov ecx, dword [esp + 0x18]
mov edx, ecx
or edx, 0x9a
and ecx, 0x9a
add ecx, edx
inc cl
mov edx, dword [esp + 0x20]
mov byte [esp + edx + 0x40], cl
inc dword [esp + 0x20]
mov ecx, dword [esp + 0x20]
cmp ecx, 0xf
jb 0x4220c0
lea ecx, [esp + 0x40]
push ecx
push eax
call fcn.00402740
add esp, 8
xor ecx, ecx
test eax, eax
setne cl
jmp dword [ecx*4 + 0x443730]
jmp 0x422158
movzx ecx, byte [eax]
test cl, cl
je 0x42214b
inc eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [edi], cl
inc edi
movzx ecx, byte [eax]
inc eax
test cl, cl
jne 0x422140
mov byte [edi], 0
mov byte [edi], 0x3a
mov byte [edi + 1], 0x20
add edi, 2
movzx ecx, byte [esp + 0x68]
test cl, cl
je 0x42217d
lea edx, [esp + 0x69]
mov eax, edi
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [eax], cl
inc eax
movzx ecx, byte [edx]
inc edx
test cl, cl
jne 0x422170
jmp 0x42217f
mov eax, edi
mov byte [eax], 0
lea edi, [eax + 1]
jmp dword [0x44373c]
mov byte [eax], 0xa
nop
nop
mov byte [eax], 0xa
mov dl, 1
jmp dword [0x443744]
mov dword [esp + 0x30], edx
mov dword [esp + 0x34], edi
mov eax, dword [case.0x422126.8]
nop
nop
nop
nop
nop
nop
nop
nop
jmp eax
push ebx
call fcn.00402f70
add esp, 4
mov eax, dword [case.0x421ce8.0]
lea edi, [esp + 0x68]
mov ebx, dword [esp + 0x64]
mov edx, dword [esp + 0x2c]
nop
nop
nop
nop
jmp eax
mov eax, dword [case.0x421287.44]
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp eax
xor ebx, ebx
jmp dword [0x44379c]
mov edi, dword [esp + 0x34]
mov byte [edi], 0
mov esi, dword [esp + 0x54]
sub edi, esi
mov dword [esp + 0x68], 0xa7a4a549
mov dword [esp + 0x6c], 0xa3afaca5
mov dword [esp + 0x70], 0xa6bebcb9
mov dword [esp + 0x74], 0xbca4447b
mov dword [esp + 0x78], 0x4f75b6b9
mov dword [esp + 0x7c], 0xcdbbb4b3
mov dword [esp + 0x80], 0xd3d00fd3
mov word [esp + 0x84], 0x59d6
mov dword [esp + 0x86], 0
mov dword [esp + 0x8a], 0
mov word [esp + 0x8e], 0
mov dword [esp + 0x18], 0
mov eax, dword [esp + 0x18]
cmp eax, 0x27
ja 0x4222b0
nop
nop
nop
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x18]
movzx ecx, byte [esp + ecx + 0x68]
lea edx, [eax + ecx]
add edx, 0xe2ac2429
add eax, 0xe2ac2429
and eax, ecx
add eax, eax
sub edx, eax
mov dword [esp + 0x40], edx
mov eax, dword [esp + 0x40]
add al, 0xe1
mov ecx, dword [esp + 0x18]
mov byte [esp + ecx + 0x68], al
inc dword [esp + 0x18]
mov eax, dword [esp + 0x18]
cmp eax, 0x28
jb 0x422270
lea eax, [esp + 0x68]
mov ecx, dword [ebp + 8]
push edi
push esi
push eax
call fcn.00409a30
mov ebx, eax
jmp dword [0x443790]
push esi
call fcn.00409140
add esp, 4
and bl, 1
jmp dword [0x44379c]
lea ecx, [esp + 0x58]
call fcn.00436480
mov eax, ebx
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov eax, dword [esp + 0xc]
test eax, eax
je case.0x421ce8.43
cmp eax, dword [esp + 0x10]
je case.0x421ce8.43
push eax
call fcn.00409140
add esp, 4
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0x14], 0
mov eax, dword [esp + 0xc]
test eax, eax
je 0x42234a
cmp eax, dword [esp + 0x10]
je 0x42234a
push eax
call fcn.00409140
add esp, 4
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0x14], 0
jmp dword [0x4437a4]
xor ecx, ecx
test eax, eax
sete cl
mov edx, 0x20119
xor eax, eax
jmp dword [ecx*4 + 0x443850]
mov dword [esi + 0x30], ebx
jmp dword [eax*4 + 0x4437b8]
mov dword [edi], 0xc39ac562
mov dword [edi + 4], 0xcf89c189
mov dword [edi + 8], 0xcb91cd99
mov dword [edi + 0xc], 0xd796c996
mov dword [edi + 0x10], 0xd370d571
mov dword [edi + 0x14], 0xdf9fd181
mov dword [edi + 0x18], 0xdb94dd93
mov dword [edi + 0x1c], 0x278ad98d
mov dword [edi + 0x20], 0x2380256d
mov dword [edi + 0x24], 0x2f71217f
mov dword [edi + 0x28], 0x2b702d64
mov dword [edi + 0x2c], 0x37672973
mov dword [edi + 0x30], 0x337f3568
mov dword [edi + 0x34], 0x3f6a3196
mov dword [edi + 0x38], 0x3b883d91
mov dword [edi + 0x3c], 0x7933980
mov dword [edi + 0x40], 0x35905a2
mov dword [edi + 0x44], 0xfab01be
mov dword [edi + 0x48], 0xbbf0da1
mov word [edi + 0x4c], 0x90a
mov byte [edi + 0x50], 0
mov word [edi + 0x4e], 0
mov dword [esi], 0
mov eax, dword [esi]
cmp eax, 0x50
ja 0x42256d
mov eax, dword [esi]
mov ecx, dword [esi]
movzx ecx, byte [edi + ecx]
lea ebx, [eax + 0x1ac98861]
add eax, 0x61
and eax, ecx
or ebx, ecx
sub ebx, eax
mov dword [esi + 0x20], ebx
mov eax, dword [esi + 0x20]
add al, 0x59
mov ecx, dword [esi]
mov byte [edi + ecx], al
inc dword [esi]
mov eax, dword [esi]
cmp eax, 0x51
jb case.default.0x422582
push 0
push 0
push edx
mov ebx, dword [esi + 0x14]
push ebx
push edi
call fcn.0043b030
add esp, 0x14
shr eax, 0x1f
jmp dword [eax*4 + 0x4437d0]
jmp dword [0x4437d8]
mov eax, 4
mov ecx, dword [case.0x4226c1.18]
mov ebx, dword [esi + 0x30]
jmp case.0x4226c1.16
xor eax, eax
mov ecx, dword [esi + 0x48]
cmp dword [ecx], 1
sete al
jmp dword [eax*4 + 0x443820]
mov eax, 2
xor ecx, ecx
jmp dword [ecx*4 + 0x443828]
mov eax, dword [esi + 0x10]
mov eax, dword [eax]
xor ecx, ecx
test eax, eax
sete cl
jmp dword [ecx*4 + 0x4437f8]
push eax
call fcn.00409140
add esp, 4
mov eax, dword [esi + 0x10]
mov dword [eax], 0
jmp case.0x422582.6
not eax
shr eax, 0x1f
mov ebx, dword [esi + 0x30]
jmp dword [eax*4 + 0x4437e8]
mov eax, dword [esi + 8]
mov ecx, dword [eax]
lea eax, [ecx + ecx]
add eax, 2
inc ecx
jns 0x422612
mov eax, 0xffffffff
push eax
call fcn.00409130
add esp, 4
mov ecx, dword [esi + 0x10]
mov dword [ecx], eax
mov ebx, dword [esi + 4]
mov dword [ebx], 0x8b788d55
mov dword [ebx + 4], 0x870a8907
mov dword [ebx + 8], 0x83768565
mov dword [ebx + 0xc], 0x9f4e8174
mov dword [ebx + 0x10], 0x9b169d7d
mov dword [ebx + 0x14], 0x97969960
mov byte [ebx + 0x1a], 0
mov word [ebx + 0x18], 0
mov dword [esi], 0
mov ecx, dword [esi]
cmp ecx, 0x1a
ja 0x4226a7
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [esi]
mov edx, dword [esi]
movzx edx, byte [ebx + edx]
lea ebx, [ecx + edx]
add ebx, 0x79233542
add ecx, 0x79233542
and ecx, edx
add ecx, ecx
sub ebx, ecx
mov dword [esi + 0x20], ebx
mov ebx, dword [esi + 4]
mov ecx, dword [esi + 0x20]
add cl, 0x32
mov edx, dword [esi]
mov byte [ebx + edx], cl
inc dword [esi]
mov ecx, dword [esi]
cmp ecx, 0x1b
jb 0x422670
push dword [esi + 8]
push eax
push 0
push ebx
mov eax, dword [esi + 0x14]
push dword [eax]
call fcn.0043bad0
add esp, 0x14
shr eax, 0x1f
mov ebx, dword [esi + 0x30]
jmp dword [eax*4 + 0x4437f0]
jmp dword [0x44380c]
mov eax, dword [esi + 0x14]
mov eax, dword [eax]
mov dword [esi + 0x44], eax
mov dword [esi + 0x20], 0x20212e2f
mov dword [esi + 0x24], 0
mov dword [esi + 0x28], 0
mov dword [esi + 0x2c], 0
mov dword [esi + 0xc], 0
mov eax, dword [esi + 0xc]
cmp eax, 0xf
ja 0x422750
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esi + 0xc]
mov ecx, dword [esi + 0xc]
movzx ecx, byte [esi + ecx + 0x20]
lea edx, [eax - 0x13b63b5a]
and edx, ecx
add eax, ecx
add eax, 0xec49c4a6
add edx, edx
sub eax, edx
mov dword [esi], eax
mov eax, dword [esi]
mov ecx, eax
or ecx, 0x75
and eax, 0x75
add eax, ecx
inc al
mov ecx, dword [esi + 0xc]
mov byte [esi + ecx + 0x20], al
inc dword [esi + 0xc]
mov eax, dword [esi + 0xc]
cmp eax, 0x10
jb 0x422710
mov ecx, dword [0x4488f4]
test ecx, ecx
je case.0x4205b3.182
mov eax, dword [esi + 0x20]
mov dword [esi + 0x98], eax
xor eax, eax
mov edx, dword [0x4488f8]
nop
nop
nop
nop
nop
cmp dword [edx + eax*8], 0x11081610
je 0x422780
inc eax
cmp ecx, eax
jne 0x422770
jmp case.0x4205b3.182
mov eax, dword [edx + eax*8 + 4]
cmp eax, dword [esi + 0x98]
jne case.default.0x4227a0
nop
nop
nop
nop
xor ecx, ecx
mov eax, dword [esi + 0x10]
cmp dword [eax], 0
setne cl
mov eax, 2
jmp dword [ecx*4 + 0x443810]
push dword [esi + 0x48]
call fcn.0043a5a0
add esp, 4
movzx eax, al
jmp dword [eax*4 + 0x443818]
xor eax, eax
mov ecx, 1
jmp dword [ecx*4 + 0x443828]
xor eax, eax
jmp case.0x4227f2.1
push dword [esi + 0x44]
push 1
push dword [0x4488fc]
push eax
call fcn.00437c10
add esp, 0x10
xor ecx, ecx
mov eax, dword [esi + 0x10]
cmp dword [eax], 0
setne cl
mov eax, 2
jmp dword [ecx*4 + 0x443810]
mov ecx, dword [case.0x4226c1.18]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp ecx
xor ecx, ecx
cmp eax, 4
setl cl
jmp dword [ecx*4 + 0x443840]
sete al
movzx ecx, al
mov edx, 0x20119
xor eax, eax
jmp dword [ecx*4 + 0x443848]
push dword [esi + 8]
push dword [esi + 0x18]
push 0
push 0
push 0
push 0
push 0
push 0
push dword [ebx]
call fcn.0043b450
add esp, 0x24
push dword [esi + 8]
push dword [esi + 0x18]
push 0
push 0
push 0
push 0
push 0
push 0
push dword [ebx]
call fcn.0043b450
add esp, 0x24
jmp dword [0x4437e4]
jmp dword [0x4437cc]
xor eax, eax
mov ecx, dword [esi + 0x10]
cmp dword [ecx], 0
sete al
jmp dword [eax*4 + 0x443858]
mov eax, dword [esi + 0x1c]
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov dword [eax], 0
mov ebx, dword [esi + 0x58]
mov dword [ebx], 0x361015c
mov dword [ebx + 4], 0x768056b
mov dword [ebx + 8], 0xb63096e
mov dword [ebx + 0xc], 0xf520d6b
mov dword [ebx + 0x10], 0x137d1173
mov dword [ebx + 0x14], 0x1770157a
mov dword [ebx + 0x18], 0x1b7d1971
mov dword [ebx + 0x1c], 0x1f681d32
mov dword [ebx + 0x20], 0x23442144
lea eax, [ebx + 0x24]
mov word [ebx + 0x24], 0x2524
mov dword [ebx + 0x26], 0
mov byte [ebx + 0x2a], 0
mov dword [esi], 0
mov ecx, dword [esi]
cmp ecx, 0x2a
ja 0x42295d
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [esi]
mov edx, dword [esi]
movzx edi, byte [ebx + edx]
mov edx, 0x1ff
sub edx, ecx
sub edx, edi
lea ebx, [ecx + edi]
add ebx, 0x881baa00
and ecx, edi
add ecx, ecx
and edx, ecx
not ecx
and ecx, ebx
mov ebx, dword [esi + 0x58]
sub ecx, edx
mov dword [esi + 0x20], ecx
mov ecx, dword [esi + 0x20]
mov edx, dword [esi]
mov byte [ebx + edx], cl
inc dword [esi]
mov ecx, dword [esi]
cmp ecx, 0x2b
jb 0x422920
mov ecx, 9
mov edx, dword [esi + 0x94]
mov edi, edx
xchg esi, ebx
rep movsd dword es:[edi], dword [esi]
xchg esi, ebx
lea edi, [edx + 0x24]
mov ecx, 1
xchg esi, eax
rep movsw word es:[edi], word [esi]
xchg esi, eax
mov eax, dword [esi + 0x10]
mov edi, dword [eax]
mov eax, 0xfffffffe
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp word [edi + eax + 2], 0
lea eax, [eax + 2]
jne 0x422990
cmp eax, 0xffffffd9
mov ebx, dword [esi + 0x6c]
jge 0x4229b1
mov eax, 0xffffffff
jmp 0x4229b4
xor eax, eax
jmp 0x423a2d
add eax, 0x26
push eax
call fcn.00409130
add esp, 4
mov ecx, dword [esi + 0x54]
mov dword [ecx], eax
movzx ecx, word [edi]
test cx, cx
je 0x4229e1
lea edx, [edi + 2]
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x4229d0
mov word [eax], 0
mov edx, dword [esi + 0x94]
movzx ecx, word [edx]
test cx, cx
je 0x422a11
add edx, 2
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x422a00
mov word [eax], 0
jmp dword [0x443860]
push edi
call fcn.00409140
add esp, 4
push 0x60
push 3
push 0x120089
push ebx
mov eax, dword [esi + 0x54]
push dword [eax]
call fcn.0043a7e0
add esp, 0x14
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x443868]
push 0
mov edi, dword [esi + 0x90]
push edi
push dword [ebx]
call fcn.0043ab70
add esp, 0xc
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x443870]
jmp case.0x422ba4.19
mov ebx, dword [edi]
lea eax, [ebx + 1]
push eax
call fcn.00409130
add esp, 4
mov edi, eax
mov eax, dword [esi + 0x88]
mov dword [eax], edi
push 0
push ebx
mov ebx, dword [esi + 0x6c]
push edi
push dword [ebx]
call fcn.0043ac70
add esp, 0x10
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x443878]
mov eax, dword [esi + 0x90]
mov ebx, dword [eax]
mov byte [edi + ebx], 0
push 0x20
call fcn.00409130
add esp, 4
mov ecx, eax
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov dword [eax + 0x18], 0xffffffff
mov dword [eax + 0x14], 0
mov dword [eax + 0x10], 0
mov dword [eax], 0
mov eax, dword [esi + 0x84]
mov dword [eax], ecx
mov dword [esi + 4], ecx
push ebx
push edi
call fcn.00425000
movzx eax, al
jmp dword [eax*4 + 0x443880]
mov edi, dword [esi + 0xa0]
mov dword [edi], 0x8f9e88e3
mov dword [edi + 4], 0x988e9e83
mov dword [edi + 8], 0xafa3d7cf
mov dword [edi + 0xc], 0xd2f5a2b4
mov dword [edi + 0x10], 0xa4abaeb2
mov dword [edi + 0x14], 0xaaa9cefb
mov dword [edi + 0x18], 0xa7bea6bf
mov word [edi + 0x1c], 0x15a7
mov dword [edi + 0x1e], 0
mov dword [edi + 0x21], 0
mov dword [esi], 0
mov eax, dword [esi]
cmp eax, 0x24
ja 0x422b92
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esi]
mov ecx, dword [esi]
movzx ecx, byte [edi + ecx]
lea edx, [eax + ecx]
add edx, 0x41269557
add eax, 0x41269557
and eax, ecx
add eax, eax
sub edx, eax
mov dword [esi + 0x20], edx
mov eax, dword [esi + 0x20]
add al, 0x9f
mov ecx, dword [esi]
mov byte [edi + ecx], al
inc dword [esi]
mov eax, dword [esi]
cmp eax, 0x25
jb 0x422b60
mov ecx, dword [esi + 4]
push edi
call fcn.004251f0
mov edx, eax
xor eax, eax
test edx, edx
setne al
jmp dword [eax*4 + 0x443888]
mov eax, dword [esi + 0x84]
mov edi, dword [eax]
mov eax, dword [case.0x422ba4.11]
nop
nop
nop
nop
nop
nop
nop
nop
jmp eax
xor eax, eax
test edi, edi
sete al
mov ebx, dword [esi + 0x6c]
jmp dword [eax*4 + 0x4438b8]
mov ecx, edi
call fcn.00425370
push edi
call fcn.00409140
add esp, 4
jmp case.0x422582.42
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp dword [0x4438c8]
mov eax, dword [esi + 0x88]
mov eax, dword [eax]
xor ecx, ecx
test eax, eax
sete cl
jmp dword [ecx*4 + 0x4438d0]
push eax
call fcn.00409140
add esp, 4
jmp case.0x422ba4.19
mov eax, dword [ebx]
mov dword [esi + 0x20], 0x20212e2f
mov dword [esi + 0x24], 0
mov dword [esi + 0x28], 0
mov dword [esi + 0x2c], 0
mov dword [esi + 0xc], 0
mov ecx, dword [esi + 0xc]
cmp ecx, 0xf
ja 0x422c91
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [esi + 0xc]
mov edx, dword [esi + 0xc]
movzx edx, byte [esi + edx + 0x20]
lea edi, [ecx - 0x13b63b5a]
and edi, edx
add ecx, edx
add ecx, 0xec49c4a6
add edi, edi
sub ecx, edi
mov dword [esi], ecx
mov ecx, dword [esi]
mov edx, ecx
or edx, 0x75
and ecx, 0x75
add ecx, edx
inc cl
mov edx, dword [esi + 0xc]
mov byte [esi + edx + 0x20], cl
inc dword [esi + 0xc]
mov ecx, dword [esi + 0xc]
cmp ecx, 0x10
jb 0x422c50
mov ecx, dword [0x4488f4]
test ecx, ecx
je case.0x422582.38
mov edx, dword [esi + 0x20]
xor edi, edi
mov ebx, dword [0x4488f8]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp dword [ebx + edi*8], 0x11081610
je 0x422cc0
inc edi
cmp ecx, edi
jne 0x422cb0
jmp case.0x422582.38
mov ecx, dword [ebx + edi*8 + 4]
cmp ecx, edx
jne 0x422d09
mov eax, dword [esi + 0x54]
mov eax, dword [eax]
xor ecx, ecx
test eax, eax
sete cl
jmp dword [ecx*4 + 0x4438d8]
push eax
call fcn.00409140
add esp, 4
mov eax, dword [esi + 0x1c]
mov ebx, dword [eax]
mov edi, dword [eax + 4]
xor eax, eax
cmp ebx, edi
sete al
jmp dword [eax*4 + 0x4438e0]
xor eax, eax
test ebx, ebx
jne 0x4239e3
jmp 0x423a2d
push eax
push 1
push dword [0x4488fc]
push ecx
call fcn.00437c10
add esp, 0x10
mov eax, dword [esi + 0x54]
mov eax, dword [eax]
xor ecx, ecx
test eax, eax
sete cl
jmp dword [ecx*4 + 0x4438d8]
mov eax, dword [esi + 0x1c]
mov ebx, dword [eax]
mov edi, dword [eax + 4]
xor eax, eax
cmp ebx, edi
sete al
jmp dword [eax*4 + 0x4438e0]
sub edi, ebx
sar edi, 3
mov eax, edi
and eax, 0x421
mov ecx, edi
or edi, 0x421
imul edi, eax
xor eax, 0x421
and ecx, 0xfffffbde
imul ecx, eax
add edi, ecx
push edi
call fcn.00409130
add esp, 4
mov ecx, dword [esi + 0x50]
mov dword [ecx], eax
mov ecx, dword [esi + 0x3c]
mov dword [ecx], eax
mov eax, dword [esi + 0x40]
mov byte [eax], 0
mov edi, dword [esi + 0x70]
mov dword [edi], 0x5b8e59a5
mov dword [edi + 4], 0x57f555e3
mov dword [edi + 8], 0x53e651f1
mov dword [edi + 0xc], 0x2f9e2ded
mov dword [edi + 0x10], 0x2bf62998
mov dword [edi + 0x14], 0x27aa2585
mov dword [edi + 0x18], 0x23df2181
mov dword [edi + 0x1c], 0x3fed3d98
mov dword [edi + 0x20], 0x3b8739b4
mov dword [edi + 0x24], 0x37833595
mov dword [edi + 0x28], 0x33863194
mov dword [edi + 0x2c], 0xfad0dbb
mov dword [edi + 0x30], 0xbbe09a9
mov dword [edi + 0x34], 0x78805f2
mov dword [edi + 0x38], 0x3bc01bc
mov word [edi + 0x3c], 0x1d1c
mov dword [edi + 0x3e], 0
mov byte [edi + 0x42], 0
mov dword [esi], 0
mov eax, dword [esi]
cmp eax, 0x42
ja 0x422e41
nop
nop
nop
mov eax, dword [esi]
mov ecx, dword [esi]
movzx ecx, byte [edi + ecx]
lea edx, [eax + 0xb4]
and edx, ecx
add eax, ecx
add edx, edx
sub eax, edx
add eax, 0xb08433b4
mov dword [esi + 0x20], eax
mov eax, dword [esi + 0x20]
add al, 0x14
mov ecx, dword [esi]
mov byte [edi + ecx], al
inc dword [esi]
mov eax, dword [esi]
cmp eax, 0x43
jb 0x422e10
lea eax, [edi + 0x3c]
mov dword [esi + 4], eax
mov ebx, dword [esi + 0x4c]
jmp dword [0x4438ec]
add edx, 8
jmp case.0x4205b3.222
xor eax, eax
mov edx, dword [esi + 0x48]
mov edi, dword [esi + 0x10]
mov ecx, dword [esi + 8]
mov dword [ecx + edi*8 + 4], eax
mov ecx, dword [esi + 0x14]
add ecx, 8
mov eax, dword [esi + 0x1c]
mov dword [eax + 4], ecx
add edx, 4
mov edx, dword [edx]
mov eax, dword [case.0x422ba4.4]
nop
nop
nop
nop
nop
nop
jmp eax
xor eax, eax
test edx, edx
setne al
jmp dword [eax*4 + 0x4438a0]
mov dword [esi + 0x48], edx
mov ecx, dword [edx]
mov eax, dword [esi + 0x1c]
mov ebx, dword [eax]
mov edx, dword [eax + 4]
mov edi, edx
sub edi, ebx
sar edi, 3
cmp edx, dword [eax + 8]
mov dword [esi + 0x10], edi
mov dword [esi + 4], ecx
jne 0x422f46
mov dword [esi + 0x14], edx
lea eax, [edi + 1]
mov ecx, edi
shr edi, 1
add edi, ecx
cmp edi, eax
ja 0x422ec5
mov edi, eax
lea eax, [edi*8]
push eax
call fcn.00409130
add esp, 4
test ebx, ebx
je 0x422f22
mov edx, dword [esi + 0x14]
cmp ebx, edx
mov dword [esi + 0x18], edi
mov edi, eax
je 0x422f14
xor eax, eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [ebx + eax]
mov dword [edi + eax], ecx
mov ecx, dword [ebx + eax + 4]
mov dword [edi + eax + 4], ecx
mov dword [ebx + eax], 0
lea ecx, [ebx + eax]
add ecx, 8
add eax, 8
cmp ecx, edx
jne 0x422ef0
mov edx, ebx
push edx
call fcn.00409140
add esp, 4
mov eax, edi
mov edi, dword [esi + 0x18]
mov dword [esi + 8], eax
mov ecx, dword [esi + 0x1c]
mov dword [ecx], eax
mov edx, dword [esi + 0x10]
lea ebx, [eax + edx*8]
mov dword [ecx + 4], ebx
mov eax, dword [esi + 8]
lea eax, [eax + edi*8]
mov edi, edx
mov edx, ebx
mov dword [ecx + 8], eax
mov ebx, dword [esi + 8]
mov ecx, dword [esi + 4]
mov dword [esi + 0x14], edx
mov dword [ebx + edi*8], 0
mov dword [esi + 8], ebx
mov dword [ebx + edi*8 + 4], 0
xor eax, eax
nop
nop
nop
mov ebx, eax
inc eax
cmp byte [ecx + ebx], 0
jne 0x422f60
push eax
mov dword [esi + 0x18], eax
call fcn.00409130
add esp, 4
mov ecx, dword [esi + 8]
mov dword [ecx + edi*8], eax
mov ecx, dword [esi + 0x18]
shr ecx, 2
mov edx, dword [esi + 4]
mov edi, eax
xchg esi, edx
rep movsd dword es:[edi], dword [esi]
xchg esi, edx
mov ecx, dword [esi + 0x18]
mov edx, ecx
and edx, 0xfffffffc
add eax, edx
add edx, dword [esi + 4]
shr ecx, 1
and ecx, 1
mov edi, edx
mov dword [esi + 0x58], edx
mov dword [esi + 0x44], eax
mov edi, eax
mov eax, dword [esi + 0x58]
xchg esi, eax
rep movsw word es:[edi], word [esi]
xchg esi, eax
mov ecx, dword [esi + 0x18]
mov edi, ecx
test cl, 1
je 0x422fc9
mov ecx, edi
and ecx, 2
movzx edx, byte [edx + ecx]
mov eax, dword [esi + 0x44]
mov byte [eax + ecx], dl
cmp edi, 1
je 0x422e55
lea ecx, [edi - 1]
cmp edi, 2
jne 0x422fe1
mov eax, 0xffffffff
jmp 0x42301e
and ebx, 0xfffffffe
mov eax, 0xffffffff
mov edi, dword [esi + 4]
nop
nop
nop
nop
mov edx, eax
shr edx, 8
xor al, byte [edi]
movzx eax, al
xor edx, dword [eax*4 + 0x43d7a0]
mov eax, edx
shr eax, 8
xor dl, byte [edi + 1]
add edi, 2
movzx edx, dl
xor eax, dword [edx*4 + 0x43d7a0]
add ebx, 0xfffffffe
jne 0x422ff0
mov dword [esi + 4], edi
mov edi, dword [esi + 0x10]
test cl, 1
mov edx, dword [esi + 0x48]
je 0x42303f
mov ecx, eax
shr ecx, 8
mov ebx, dword [esi + 4]
xor al, byte [ebx]
movzx eax, al
xor ecx, dword [eax*4 + 0x43d7a0]
mov eax, ecx
not eax
jmp 0x422e5d
push ecx
call fcn.00409140
add esp, 4
mov edx, dword [esi + 0x7c]
mov eax, dword [edx]
add eax, 4
mov eax, dword [eax]
mov dword [edx], eax
mov ecx, dword [case.0x422d27.33]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp ecx
xor ecx, ecx
test eax, eax
setne cl
jmp dword [ecx*4 + 0x443960]
mov edi, dword [eax]
xor ebx, ebx
cmp dword [eax + 0x18], 3
jne case.default.0x423094
mov ebx, dword [eax + 0x10]
xor ecx, ecx
test edi, edi
setne cl
jmp dword [ecx*4 + 0x443968]
xor ecx, ecx
test ebx, ebx
setne cl
jmp dword [ecx*4 + 0x443970]
mov eax, ebx
nop
nop
nop
nop
nop
mov ecx, eax
inc eax
cmp byte [ecx], 0
jne case.default.0x4230e9
mov dword [esi + 4], ebx
sub ecx, ebx
inc ecx
shr ecx, 1
mov dword [esi + 0x4c], ecx
lea eax, [ecx + 1]
push eax
call fcn.00409130
add esp, 4
mov ebx, eax
mov eax, dword [esi + 0x80]
mov dword [eax], ebx
mov eax, dword [esi + 4]
movsx edx, byte [eax]
xor ecx, ecx
test edx, edx
setne cl
mov dword [esi + 0x34], ebx
jmp dword [ecx*4 + 0x443978]
mov ebx, dword [esi + 8]
mov byte [ebx], cl
inc ebx
movsx edx, byte [eax]
xor ecx, ecx
test edx, edx
setne cl
jmp dword [ecx*4 + 0x443978]
mov dword [esi + 8], ebx
mov dword [esi + 4], eax
inc eax
mov ecx, edx
or ecx, 0x20
lea ebx, [ecx - 0x61]
cmp ebx, 5
ja case.default.0x423128
add ecx, 0xffffffa9
movsx edx, byte [eax]
xor ebx, ebx
test edx, edx
setne bl
jmp dword [ebx*4 + 0x443980]
lea ebx, [edx - 0x30]
mov ecx, 0xffffffff
cmp ebx, 9
ja case.default.0x423153
mov ecx, edx
xor ecx, 0xffffffcf
and edx, 0xffffffcf
lea ecx, [ecx + edx*2]
inc ecx
movsx edx, byte [eax]
xor ebx, ebx
test edx, edx
setne bl
jmp dword [ebx*4 + 0x443980]
shl cl, 4
add dword [esi + 4], 2
mov ebx, edx
or ebx, 0x20
lea eax, [ebx - 0x61]
cmp eax, 5
ja case.default.0x423186
add ebx, 0xffffffa9
or cl, bl
mov ebx, dword [esi + 8]
mov byte [ebx], cl
inc ebx
mov eax, dword [esi + 4]
movsx edx, byte [eax]
xor ecx, ecx
test edx, edx
setne cl
jmp dword [ecx*4 + 0x443978]
lea eax, [edx - 0x30]
mov ebx, 0xffffffff
cmp eax, 9
ja case.default.0x4231be
mov eax, edx
xor eax, 0xffffffcf
and edx, 0xffffffcf
lea ebx, [eax + edx*2]
inc ebx
or cl, bl
mov ebx, dword [esi + 8]
mov byte [ebx], cl
inc ebx
mov eax, dword [esi + 4]
movsx edx, byte [eax]
xor ecx, ecx
test edx, edx
setne cl
jmp dword [ecx*4 + 0x443978]
mov byte [ebx], 0
nop
nop
nop
nop
nop
nop
nop
nop
inc edi
movzx eax, byte [edi - 1]
movsx ecx, al
lea edx, [ecx - 9]
cmp edx, 5
jb 0x4231d0
cmp ecx, 0x20
je 0x4231d0
movzx ecx, al
cmp ecx, 0x2b
je 0x4231f6
cmp ecx, 0x2d
jne 0x423435
cmp al, 0x2b
sete byte [esi + 0x10]
movzx eax, byte [edi]
cmp al, 0x30
jne 0x423213
movzx eax, byte [edi + 1]
and al, 0xdf
xor ecx, ecx
cmp al, 0x58
sete cl
lea edi, [edi + ecx*2]
mov dword [esi + 0x14], edi
xor edx, edx
mov dword [esi + 8], 0
xor eax, eax
jmp 0x423237
mov dword [esi + 8], eax
mov edx, edi
mov eax, ebx
mov dword [esi + 4], eax
mov ebx, dword [esi + 8]
mov dword [esi + 0x18], edx
mov edi, dword [esi + 0x14]
movsx eax, byte [edi]
lea ecx, [eax - 0x30]
cmp ecx, 0xa
jb 0x42327c
cmp al, 0x41
jl 0x4232f3
cmp al, 0x5b
jb 0x423266
lea ecx, [eax - 0x61]
cmp ecx, 0x19
ja 0x4232f3
mov edx, eax
and edx, 0xffffffdf
mov ecx, eax
xor ecx, 0x20
add ecx, eax
sub ecx, edx
add ecx, 0xffffffa9
cmp ecx, 0xf
jg 0x4232f3
inc edi
mov dword [esi + 0x14], edi
mov edx, ebx
mov edi, dword [esi + 4]
and edx, edi
mov dword [esi + 8], 0xffffffff
mov eax, 0xffffffff
cmp edx, 0xffffffff
mov edx, 0x22
je 0x423237
mov edx, edi
shld edi, ebx, 4
shr edx, 0x1c
shl ebx, 4
mov eax, edx
neg eax
mov eax, 0
sbb eax, eax
or edi, eax
or eax, ebx
mov ebx, ecx
sar ebx, 0x1f
add eax, ecx
adc ebx, edi
mov edi, 0xffffffff
mov ecx, 0xffffffff
jb 0x4232d1
mov edi, ebx
mov ecx, eax
mov ebx, edi
mov eax, ecx
mov edi, 0x22
mov ecx, 0x22
jb 0x4232e4
mov ecx, dword [esi + 0x18]
test edx, edx
jne 0x423230
mov edi, ecx
jmp 0x423230
xor edi, edi
mov eax, ebx
neg eax
mov ecx, 0
mov edx, dword [esi + 4]
sbb ecx, edx
cmp byte [esi + 0x10], 0
jne case.default.0x423325
mov ebx, eax
mov edx, ecx
mov dword [esi + 8], ebx
mov dword [esi + 4], edx
mov eax, dword [esi + 0x1c]
mov ecx, dword [eax]
mov edx, dword [eax + 4]
xor eax, eax
mov dword [esi + 0x14], edx
cmp ecx, edx
setne al
jmp dword [eax*4 + 0x443988]
jmp dword [0x443998]
mov edi, dword [ecx]
xor eax, eax
jmp dword [eax*4 + 0x4439a8]
add ecx, 8
xor eax, eax
cmp ecx, dword [esi + 0x14]
setne al
jmp dword [eax*4 + 0x443988]
cmp dword [esi + 0x18], 0x22
setne bl
mov eax, dword [ecx + 4]
mov edx, eax
shr edx, 0x1c
xor edx, dword [esi + 4]
shl eax, 4
or eax, 1
xor eax, dword [esi + 8]
or eax, edx
sete al
and al, bl
movzx eax, al
jmp dword [eax*4 + 0x4439a0]
mov eax, 1
jmp dword [eax*4 + 0x4439a8]
xor eax, eax
test edi, edi
setne al
jmp dword [eax*4 + 0x4439b0]
xor eax, eax
mov ecx, dword [esi + 0x34]
test ecx, ecx
sete al
jmp dword [eax*4 + 0x4439c0]
mov eax, dword [esi + 0x78]
mov ecx, dword [esi + 0x4c]
mov dword [eax], ecx
mov ecx, dword [esi + 0x34]
mov dword [eax + 4], ecx
mov eax, 0xffffffff
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp byte [edi + eax + 1], 0
lea eax, [eax + 1]
jne case.default.0x42341d
mov ecx, dword [esi + 0x74]
mov dword [ecx], eax
mov dword [ecx + 4], edi
mov ebx, dword [esi + 0x60]
mov dword [ebx], 0
mov dword [ebx + 4], 0
push 0x932a8d34
push dword [0x448900]
call fcn.00439c60
add esp, 8
push ebx
push 1
push 0
push 0
push dword [esi + 0x74]
push 0
push dword [esi + 0x78]
call eax
xor ecx, ecx
test eax, eax
setne cl
jmp dword [ecx*4 + 0x4439b8]
xor eax, eax
mov ecx, dword [esi + 0x34]
test ecx, ecx
sete al
jmp dword [eax*4 + 0x4439c0]
dec edi
mov byte [esi + 0x10], 1
cmp al, 0x30
je 0x423203
jmp 0x423213
mov eax, dword [esi + 0x3c]
mov ecx, dword [eax]
movzx eax, byte [edi]
test al, al
je 0x42346b
inc edi
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [ecx], al
inc ecx
movzx eax, byte [edi]
inc edi
test al, al
jne 0x423460
mov byte [ecx], 0x3a
lea eax, [ecx + 2]
mov edx, dword [esi + 0x3c]
mov dword [edx], eax
mov byte [ecx + 1], 0x20
mov edi, dword [esi + 0x60]
mov edx, dword [edi]
test edx, edx
je 0x4234b0
mov ecx, dword [edi + 4]
mov edi, edx
and edi, 3
je 0x4234b4
mov dword [esi + 4], edx
xor ebx, ebx
movzx edx, byte [ecx]
cmp dl, 1
mov byte [eax + ebx], dl
sbb ecx, 0xffffffff
inc ebx
cmp edi, ebx
jne 0x423492
add eax, ebx
mov edi, dword [esi + 4]
mov edx, edi
sub edx, ebx
mov ebx, eax
jmp 0x4234b6
mov ebx, eax
jmp 0x4234f7
mov edi, edx
cmp edi, 4
mov edi, dword [esi + 0x60]
jb 0x4234f7
movzx ebx, byte [ecx]
cmp bl, 1
sbb ecx, 0xffffffff
mov byte [eax], bl
movzx ebx, byte [ecx]
cmp bl, 1
sbb ecx, 0xffffffff
mov byte [eax + 1], bl
movzx ebx, byte [ecx]
cmp bl, 1
sbb ecx, 0xffffffff
mov byte [eax + 2], bl
movzx ebx, byte [ecx]
cmp bl, 1
sbb ecx, 0xffffffff
mov byte [eax + 3], bl
lea ebx, [eax + 4]
mov eax, ebx
add edx, 0xfffffffc
jne 0x4234be
lea eax, [ebx + 1]
mov ecx, dword [esi + 0x3c]
mov dword [ecx], eax
mov byte [ebx], 0xa
mov edx, dword [esi + 0x40]
movzx eax, byte [edx]
lea ecx, [eax + 1]
or eax, 2
cmp eax, ecx
setne byte [edx]
push 0x2e0ec9bb
push dword [0x4488ec]
call fcn.00439c60
add esp, 8
push dword [edi + 4]
call eax
mov eax, dword [esi + 0x80]
mov ecx, dword [eax]
xor eax, eax
test ecx, ecx
sete al
jmp dword [eax*4 + 0x4439c0]
jmp case.0x422d27.28
xor eax, eax
test ebx, ebx
sete al
jmp dword [eax*4 + 0x4439e0]
push ebx
call fcn.00409140
add esp, 4
jmp case.0x422d27.18
push ebx
call fcn.004251f0
jmp dword [0x443944]
mov eax, dword [esi + 0x68]
mov ecx, dword [eax]
mov dword [ebx], 0xdfeed4f3
mov dword [ebx + 4], 0xe4deeed3
mov dword [ebx + 8], 0x9febf79f
mov dword [ebx + 0xc], 0x82e19aa8
mov dword [ebx + 0x10], 0xa8939ea2
mov dword [ebx + 0x14], 0xada9fceb
mov dword [ebx + 0x18], 0xb79996ac
mov dword [ebx + 0x1c], 0x8f8586e7
mov word [ebx + 0x20], 0x258d
mov dword [ebx + 0x22], 0
mov dword [ebx + 0x26], 0
mov dword [ebx + 0x2a], 0
mov dword [esi], 0
mov eax, dword [esi]
cmp eax, 0x2d
ja 0x423570
mov eax, dword [esi]
mov edx, dword [esi]
movzx edi, byte [ebx + edx]
lea edx, [eax + edi]
add edx, 0xa7623635
add eax, 0xa7623635
and eax, edi
add eax, eax
mov edi, edx
not edi
and edi, eax
not eax
and eax, edx
sub eax, edi
mov dword [esi + 0x20], eax
mov eax, dword [esi + 0x20]
add al, 0x8d
mov edx, dword [esi]
mov byte [ebx + edx], al
inc dword [esi]
mov eax, dword [esi]
cmp eax, 0x2e
jb 0x4235e0
jmp 0x423570
xor ecx, ecx
test eax, eax
setne cl
jmp dword [ecx*4 + 0x443948]
jmp dword [0x4439d0]
add eax, 8
mov edx, dword [esi + 0x7c]
jmp case.0x4205b3.279
mov eax, dword [edi]
mov dword [esi + 0x20], 0x20212e2f
mov dword [esi + 0x24], 0
mov dword [esi + 0x28], 0
mov dword [esi + 0x2c], 0
mov dword [esi + 0xc], 0
mov ecx, dword [esi + 0xc]
cmp ecx, 0xf
ja 0x4236b1
nop
nop
mov ecx, dword [esi + 0xc]
mov edx, dword [esi + 0xc]
movzx edx, byte [esi + edx + 0x20]
lea edi, [ecx - 0x13b63b5a]
and edi, edx
add ecx, edx
add ecx, 0xec49c4a6
add edi, edi
sub ecx, edi
mov dword [esi], ecx
mov ecx, dword [esi]
mov edx, ecx
or edx, 0x75
and ecx, 0x75
add ecx, edx
inc cl
mov edx, dword [esi + 0xc]
mov byte [esi + edx + 0x20], cl
inc dword [esi + 0xc]
mov ecx, dword [esi + 0xc]
cmp ecx, 0x10
jb 0x423670
mov ecx, dword [0x4488f4]
test ecx, ecx
je case.0x422d27.12
mov edx, dword [esi + 0x20]
xor edi, edi
mov ebx, dword [0x4488f8]
nop
nop
nop
nop
nop
nop
cmp dword [ebx + edi*8], 0x11081610
je 0x4236e3
inc edi
cmp ecx, edi
jne 0x4236d0
jmp case.0x422d27.12
mov ecx, dword [ebx + edi*8 + 4]
cmp ecx, edx
je case.0x422d27.12
push eax
push 1
push dword [0x4488fc]
push ecx
call fcn.00437c10
add esp, 0x10
mov eax, dword [esi + 0x5c]
mov eax, dword [eax]
xor ecx, ecx
test eax, eax
sete cl
jmp dword [ecx*4 + 0x4439e8]
mov eax, dword [esi + 0x40]
movzx ebx, byte [eax]
jmp dword [ebx*4 + 0x4439f0]
mov eax, dword [esi + 0x50]
mov eax, dword [eax]
xor ecx, ecx
test eax, eax
sete cl
jmp dword [ecx*4 + 0x4439f8]
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x443920]
mov edi, dword [ebx]
lea eax, [edi + 1]
push eax
call fcn.00409130
add esp, 4
mov ebx, eax
mov eax, dword [esi + 0x64]
mov dword [eax], ebx
push 0
push edi
mov edi, dword [esi + 0x38]
push ebx
push dword [edi]
call fcn.0043ac70
add esp, 0x10
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x443928]
mov eax, dword [esi + 0x8c]
mov eax, dword [eax]
mov dword [esi + 4], eax
mov byte [ebx + eax], 0
push 0x20
call fcn.00409130
add esp, 4
mov edi, eax
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov dword [eax + 0x18], 0xffffffff
mov dword [eax + 0x14], 0
mov dword [eax + 0x10], 0
mov dword [eax], 0
mov eax, dword [esi + 0x68]
mov dword [eax], edi
mov ecx, edi
push dword [esi + 4]
push ebx
call fcn.00425000
movzx eax, al
jmp dword [eax*4 + 0x443930]
mov eax, dword [esi + 0x68]
mov edi, dword [eax]
xor eax, eax
test edi, edi
sete al
jmp dword [eax*4 + 0x4439d8]
mov ecx, edi
call fcn.00425370
push edi
call fcn.00409140
add esp, 4
mov eax, dword [esi + 0x64]
mov ebx, dword [eax]
xor eax, eax
test ebx, ebx
sete al
mov edi, dword [esi + 0x38]
jmp dword [eax*4 + 0x4439e0]
mov ebx, dword [esi + 0x9c]
jmp dword [0x443938]
mov dword [ebx], 0xdfeed4f3
mov dword [ebx + 4], 0xe4deeed3
mov dword [ebx + 8], 0x9febf79f
mov dword [ebx + 0xc], 0x82e19aa8
mov dword [ebx + 0x10], 0xa8939ea2
mov dword [ebx + 0x14], 0xada9fceb
mov dword [ebx + 0x18], 0xb79996ac
mov dword [ebx + 0x1c], 0x8f8586e7
mov word [ebx + 0x20], 0x258d
mov dword [ebx + 0x22], 0
mov dword [ebx + 0x26], 0
mov dword [ebx + 0x2a], 0
mov dword [esi], 0
mov eax, dword [esi]
cmp eax, 0x2d
ja 0x4238b0
mov eax, dword [esi]
mov ecx, dword [esi]
movzx edx, byte [ebx + ecx]
lea ecx, [eax + edx]
add ecx, 0xa7623635
add eax, 0xa7623635
and eax, edx
add eax, eax
mov edx, ecx
not edx
and edx, eax
not eax
and eax, ecx
sub eax, edx
mov dword [esi + 0x20], eax
mov eax, dword [esi + 0x20]
add al, 0x8d
mov ecx, dword [esi]
mov byte [ebx + ecx], al
inc dword [esi]
mov eax, dword [esi]
cmp eax, 0x2e
jb 0x423874
mov ecx, edi
push ebx
call fcn.004251f0
jmp case.0x422d27.24
mov eax, dword [esi + 0x64]
mov ebx, dword [eax]
xor eax, eax
test ebx, ebx
sete al
mov edi, dword [esi + 0x38]
jmp dword [eax*4 + 0x4439e0]
push eax
call fcn.00409140
add esp, 4
mov eax, dword [esi + 0x40]
movzx ebx, byte [eax]
jmp dword [ebx*4 + 0x4439f0]
mov eax, dword [esi + 0x3c]
mov eax, dword [eax]
mov byte [eax], 0
mov ecx, dword [esi + 0x50]
mov edx, dword [ecx]
mov ecx, dword [esi + 0xa4]
mov ecx, dword [ecx]
mov dword [esi + 4], edx
sub eax, edx
mov ebx, dword [esi + 0x30]
mov dword [ebx], 0x4f4a4999
mov dword [ebx + 4], 0x5b77764d
mov dword [ebx + 8], 0x40444649
mov dword [ebx + 0xc], 0x52427e9b
mov dword [ebx + 0x10], 0x679d5c69
mov dword [ebx + 0x14], 0x515b5e53
mov dword [ebx + 0x18], 0x4b4e9753
mov word [ebx + 0x1c], 0x3db0
mov dword [ebx + 0x22], 0
mov dword [ebx + 0x1e], 0
mov dword [esi], 0
mov edi, dword [esi]
cmp edi, 0x25
ja 0x423990
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov edi, dword [esi]
mov ebx, dword [esi]
mov edx, dword [esi + 0x30]
movzx ebx, byte [edx + ebx]
add edi, 0x52566964
xor edi, ebx
mov dword [esi + 0x20], edi
mov ebx, dword [esi + 0x20]
add bl, 0x44
mov edi, dword [esi]
mov edx, dword [esi + 0x30]
mov byte [edx + edi], bl
mov ebx, dword [esi + 0x30]
inc dword [esi]
mov edi, dword [esi]
cmp edi, 0x26
jb 0x423960
push eax
push dword [esi + 4]
push ebx
call fcn.00409a30
mov ebx, eax
mov eax, dword [esi + 0x40]
mov byte [eax], bl
mov eax, dword [esi + 0x50]
mov eax, dword [eax]
xor ecx, ecx
test eax, eax
sete cl
jmp dword [ecx*4 + 0x4439f8]
push eax
call fcn.00409140
add esp, 4
mov eax, dword [case.0x4239ad.1]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp eax
test bl, bl
setne al
mov ecx, dword [esi + 0x1c]
mov ebx, dword [ecx]
mov edi, dword [ecx + 4]
test ebx, ebx
je 0x423a2d
cmp ebx, edi
je 0x423a2d
mov dword [esi + 8], eax
mov dword [esi + 4], ebx
jmp 0x4239f4
cmp ebx, edi
je 0x423a08
mov eax, dword [ebx]
add ebx, 8
test eax, eax
je 0x4239f0
push eax
call fcn.00409140
add esp, 4
jmp 0x4239f0
push dword [esi + 4]
call fcn.00409140
add esp, 4
mov eax, dword [esi + 0x1c]
mov dword [eax], 0
mov dword [eax + 4], 0
mov dword [eax + 8], 0
mov eax, dword [esi + 8]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov ecx, dword [case.0x422d27.11]
nop
nop
nop
nop
nop
jmp ecx
not eax
shr eax, 0x1f
mov edi, dword [esi + 0x38]
mov ebx, dword [esi + 0x8c]
jmp dword [eax*4 + 0x443908]
mov eax, dword [esi + 0x5c]
mov eax, dword [eax]
xor ecx, ecx
test eax, eax
sete cl
jmp dword [ecx*4 + 0x4439e8]
jmp dword [0x443910]
push 0
push ebx
push dword [edi]
call fcn.0043ab70
add esp, 0xc
nop
nop
nop
push 0
push ebx
push dword [edi]
call fcn.0043ab70
add esp, 0xc
jmp dword [0x443918]
mov eax, edi
mov edi, ebx
mov ecx, 0xf
xchg esi, eax
rep movsd dword es:[edi], dword [esi]
xchg esi, eax
lea edi, [ebx + 0x3c]
mov eax, dword [esi + 4]
mov ecx, 1
xchg esi, eax
rep movsw word es:[edi], word [esi]
xchg esi, eax
mov edi, dword [esi + 0x34]
push edi
push 0
push 0
push 0x1e
push ebx
push 0
call dword [0x4478e8]
mov ebx, dword [edi]
lea eax, [ebx + ebx]
test ebx, ebx
jns 0x423ad1
mov eax, 0xffffffff
push eax
call fcn.00409130
add esp, 4
mov ecx, edi
mov edi, eax
mov eax, dword [esi + 0x5c]
mov dword [eax], edi
push ecx
push ebx
push edi
push 0x1e
mov ebx, dword [esi + 0x4c]
push ebx
push 0
call dword [0x4478e8]
push 0x60
push 3
push 0x120089
push dword [esi + 0x38]
push edi
call fcn.0043a7e0
add esp, 0x14
mov edi, dword [esi + 0x70]
jmp dword [0x4438f0]
mov eax, edi
mov edi, ebx
mov ecx, 0xf
xchg esi, eax
rep movsd dword es:[edi], dword [esi]
xchg esi, eax
lea edi, [ebx + 0x3c]
mov eax, dword [esi + 4]
mov ecx, 1
xchg esi, eax
rep movsw word es:[edi], word [esi]
xchg esi, eax
mov edi, dword [esi + 0x34]
push edi
push 0
push 0
push 0x1e
push ebx
push 0
call dword [0x4478e8]
mov ebx, dword [edi]
lea eax, [ebx + ebx]
test ebx, ebx
jns 0x423b50
mov eax, 0xffffffff
push eax
call fcn.00409130
add esp, 4
mov edi, eax
mov eax, dword [esi + 0x5c]
mov dword [eax], edi
push dword [esi + 0x34]
push ebx
push edi
push 0x1e
mov ebx, dword [esi + 0x4c]
push ebx
push 0
call dword [0x4478e8]
push 0x60
push 3
push 0x120089
push dword [esi + 0x38]
push edi
call fcn.0043a7e0
add esp, 0x14
mov edi, dword [esi + 0x70]
jmp case.0x422d27.5
push eax
mov ecx, esp
sub esp, 0x14
mov dword [esi + 0x30], esp
sub esp, 0x20
mov eax, esp
and eax, 0xfffffff8
mov esp, eax
push eax
mov dword [esi + 0x38], esp
push eax
mov dword [esi + 0x50], esp
sub esp, 0x10
mov dword [esi + 0x34], esp
sub esp, 0x18
mov edx, esp
and edx, 0xfffffff8
mov dword [esi + 4], edx
mov esp, edx
push eax
sub esp, 0x18
mov dword [esi + 0x24], esp
sub esp, 0x28
mov edx, esp
and edx, 0xfffffff8
mov dword [esi + 8], edx
mov esp, edx
push eax
sub esp, 0x14
mov dword [esi + 0x64], esp
sub esp, 0x20
mov edx, esp
and edx, 0xfffffff8
mov dword [esi + 0xc], edx
mov esp, edx
push eax
sub esp, 8
mov ebx, esp
push eax
mov dword [esi + 0x6c], esp
push eax
mov dword [esi + 0x4c], esp
push eax
mov dword [esi + 0x98], esp
push eax
mov dword [esi + 0x2c], esp
push eax
mov dword [esi + 0x78], esp
push eax
mov dword [esi + 0x28], esp
sub esp, 0x1c
mov dword [esi + 0x44], esp
sub esp, 0x28
mov edx, esp
and edx, 0xfffffff8
mov dword [esi + 0xb4], edx
mov esp, edx
push eax
mov dword [esi + 0x40], esp
push eax
mov dword [esi + 0x48], esp
push eax
mov dword [esi + 0x58], esp
push eax
mov dword [esi + 0x88], esp
push eax
mov dword [esi + 0x84], esp
sub esp, 0x20
mov edx, esp
and edx, 0xfffffff8
mov dword [esi + 0xa4], edx
mov esp, edx
push eax
mov dword [esi + 0x80], esp
sub esp, 8
mov dword [esi + 0xa0], esp
sub esp, 8
mov dword [esi + 0x54], esp
sub esp, 0x10
mov dword [esi + 0x68], esp
sub esp, 0x18
mov edx, esp
and edx, 0xfffffff8
mov dword [esi + 0x5c], edx
mov esp, edx
push eax
mov dword [esi + 0x7c], esp
sub esp, 0x30
mov dword [esi + 0x74], esp
sub esp, 0x30
mov edx, esp
and edx, 0xfffffff8
mov dword [esi + 0xb0], edx
mov esp, edx
push eax
mov dword [esi + 0x94], esp
sub esp, 0x14
mov dword [esi + 0x70], esp
sub esp, 0x20
mov edx, esp
and edx, 0xfffffff8
mov dword [esi + 0xac], edx
mov esp, edx
push eax
mov dword [esi + 0x90], esp
sub esp, 0x10
mov edx, esp
and edx, 0xfffffff8
mov dword [esi + 0xa8], edx
mov esp, edx
mov dword [esi + 0x8c], ecx
mov edx, dword [ebp + 8]
mov dword [ecx], edx
mov dword [eax], 0x3430125
mov dword [eax + 4], 0x7760574
mov dword [eax + 8], 0xb6b094c
mov dword [eax + 0xc], 0xf6f0d78
mov dword [eax + 0x10], 0x13121135
lea ecx, [eax + 0x14]
mov dword [esi + 0x60], ecx
mov dword [eax + 0x14], 0
mov word [eax + 0x18], 0
mov dword [esi], 0
mov ecx, dword [esi]
cmp ecx, 0x19
ja 0x423d63
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [esi]
mov edi, dword [esi]
movzx edi, byte [eax + edi]
lea edx, [ecx + 0x80]
add ecx, edi
and edx, edi
add edx, edx
sub ecx, edx
add ecx, 0xd880
mov dword [esi + 0x10], ecx
mov ecx, dword [esi + 0x10]
add cl, 0x80
mov edx, dword [esi]
mov byte [eax + edx], cl
inc dword [esi]
mov ecx, dword [esi]
cmp ecx, 0x1a
jb 0x423d30
mov ecx, 5
mov edx, dword [esi + 0x30]
mov edi, edx
xchg esi, eax
rep movsd dword es:[edi], dword [esi]
xchg esi, eax
mov edi, edx
add edi, 0x14
xor ecx, ecx
mov eax, dword [esi + 0x60]
xchg esi, eax
rep movsw word es:[edi], word [esi]
xchg esi, eax
mov edi, dword [esi + 0x38]
push edi
push 0
push 0
push 9
push edx
push 0
call dword [0x4478e8]
mov edi, dword [edi]
lea eax, [edi + edi]
test edi, edi
jns 0x423da1
mov eax, 0xffffffff
push eax
call fcn.00409130
add esp, 4
mov ecx, dword [esi + 0x50]
mov dword [ecx], eax
push dword [esi + 0x38]
push edi
push eax
push 9
push dword [esi + 0x30]
push 0
call dword [0x4478e8]
mov edi, dword [esi + 4]
mov dword [edi], 0xbb13b9f2
mov dword [edi + 4], 0xbf19bd0f
mov dword [edi + 8], 0x8332810f
mov dword [edi + 0xc], 0x87848526
lea eax, [edi + 0x10]
mov dword [esi + 0x30], eax
mov word [edi + 0x10], 0
mov dword [esi], 0
mov ecx, dword [esi]
cmp ecx, 0x11
ja 0x423e31
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [esi]
mov edx, dword [esi]
movzx edx, byte [edi + edx]
lea edi, [ecx - 0x15841ee9]
add ecx, 0x17
and ecx, edx
or edi, edx
sub edi, ecx
mov dword [esi + 0x10], edi
mov edi, dword [esi + 4]
mov ecx, dword [esi + 0x10]
add cl, 0x5f
mov edx, dword [esi]
mov byte [edi + edx], cl
inc dword [esi]
mov ecx, dword [esi]
cmp ecx, 0x12
jb 0x423e00
mov edx, dword [esi + 0x34]
mov eax, edi
mov edi, edx
mov ecx, 4
xchg esi, eax
rep movsd dword es:[edi], dword [esi]
xchg esi, eax
add edx, 0x10
mov edi, edx
xor ecx, ecx
mov eax, dword [esi + 0x30]
xchg esi, eax
rep movsw word es:[edi], word [esi]
xchg esi, eax
mov edi, dword [esi + 8]
mov dword [edi], 0x3bd339f2
mov dword [edi + 4], 0x3fd93dcf
mov dword [edi + 8], 0xc332c1cf
mov dword [edi + 0xc], 0xc701c526
mov dword [edi + 0x10], 0xcb26c925
mov dword [edi + 0x14], 0xcf3ecd29
mov dword [edi + 0x18], 0xd3d0d135
lea eax, [edi + 0x1c]
mov dword [esi + 4], eax
mov dword [edi + 0x1c], 0
mov word [edi + 0x20], 0
mov dword [esi], 0
mov ecx, dword [esi]
cmp ecx, 0x21
ja 0x423ef7
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [esi]
mov edx, dword [esi]
movzx edx, byte [edi + edx]
lea edi, [ecx - 0x56cbb689]
mov eax, edi
and eax, edx
xor edi, edx
lea eax, [edi + eax*2]
mov edi, dword [esi + 8]
add ecx, 0x77
and ecx, edx
add ecx, ecx
sub eax, ecx
mov dword [esi + 0x10], eax
mov eax, dword [esi + 0x10]
mov ecx, eax
xor ecx, 0xbe
and eax, 0x3e
lea eax, [ecx + eax*2]
inc al
mov ecx, dword [esi]
mov byte [edi + ecx], al
inc dword [esi]
mov eax, dword [esi]
cmp eax, 0x22
jb 0x423eb0
mov eax, dword [esi + 0x24]
mov edx, edi
mov edi, eax
mov ecx, 7
xchg esi, edx
rep movsd dword es:[edi], dword [esi]
xchg esi, edx
add eax, 0x1c
mov edi, eax
xor ecx, ecx
mov eax, dword [esi + 4]
xchg esi, eax
rep movsw word es:[edi], word [esi]
xchg esi, eax
mov edi, dword [esi + 0xc]
mov dword [edi], 0x833b815a
mov dword [edi + 4], 0x9f219d0f
mov dword [edi + 8], 0x9b2a992f
mov dword [edi + 0xc], 0x97449526
mov dword [edi + 0x10], 0x9352913a
lea eax, [edi + 0x14]
mov dword [esi + 8], eax
mov word [edi + 0x14], 0x6d92
mov dword [edi + 0x16], 0
mov dword [edi + 0x19], 0
mov dword [esi], 0
mov ecx, dword [esi]
cmp ecx, 0x1c
ja 0x423fa7
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [esi]
mov edx, dword [esi]
movzx edx, byte [edi + edx]
lea edi, [ecx + edx]
add edi, 0x440e75eb
add ecx, 0x440e75eb
and ecx, edx
add ecx, ecx
sub edi, ecx
mov dword [esi + 0x10], edi
mov edi, dword [esi + 0xc]
mov ecx, dword [esi + 0x10]
add cl, 0x93
mov edx, dword [esi]
mov byte [edi + edx], cl
inc dword [esi]
mov ecx, dword [esi]
cmp ecx, 0x1d
jb 0x423f70
mov ecx, 5
mov edx, dword [esi + 0x64]
mov eax, edi
mov edi, edx
xchg esi, eax
rep movsd dword es:[edi], dword [esi]
xchg esi, eax
mov edi, edx
add edi, 0x14
mov ecx, 1
mov eax, dword [esi + 8]
xchg esi, eax
rep movsw word es:[edi], word [esi]
xchg esi, eax
mov eax, dword [esi + 0x34]
mov dword [ebx], eax
mov eax, dword [esi + 0x24]
mov dword [ebx + 4], eax
mov dword [ebx + 8], edx
mov eax, ebx
add eax, 0xc
mov ecx, dword [esi + 0x98]
mov dword [ecx], eax
mov eax, dword [esi + 0x6c]
mov byte [eax], 0
mov eax, dword [esi + 0x4c]
mov dword [eax], ebx
jmp dword [0x443a1c]
push eax
sub esp, 0x10
mov dword [esi + 8], esp
sub esp, 0x20
mov eax, esp
and eax, 0xfffffff8
mov esp, eax
push eax
mov dword [esi + 4], esp
sub esp, 0x10
mov dword [esi + 0x44], esp
sub esp, 0x18
mov ebx, esp
and ebx, 0xfffffff8
mov esp, ebx
push eax
sub esp, 0x18
mov dword [esi + 0x28], esp
sub esp, 0x28
mov ecx, esp
and ecx, 0xfffffff8
mov dword [esi + 0xc], ecx
mov esp, ecx
push eax
sub esp, 0x14
mov dword [esi + 0x38], esp
sub esp, 0x20
mov ecx, esp
and ecx, 0xfffffff8
mov dword [esi + 0x2c], ecx
mov esp, ecx
mov dword [eax], 0x3430125
mov dword [eax + 4], 0x7760574
mov dword [eax + 8], 0xb6b094c
mov dword [eax + 0xc], 0xf6f0d78
mov dword [eax + 0x10], 0x13121135
lea ecx, [eax + 0x14]
mov dword [esi + 0x40], ecx
mov dword [eax + 0x14], 0
mov word [eax + 0x18], 0
mov dword [esi], 0
mov ecx, dword [esi]
cmp ecx, 0x19
ja 0x4240c3
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [esi]
mov edi, dword [esi]
movzx edi, byte [eax + edi]
lea edx, [ecx + 0x80]
add ecx, edi
and edx, edi
add edx, edx
sub ecx, edx
add ecx, 0xd880
mov dword [esi + 0x10], ecx
mov ecx, dword [esi + 0x10]
add cl, 0x80
mov edx, dword [esi]
mov byte [eax + edx], cl
inc dword [esi]
mov ecx, dword [esi]
cmp ecx, 0x1a
jb 0x424090
mov edx, dword [esi + 8]
mov edi, edx
mov ecx, 5
xchg esi, eax
rep movsd dword es:[edi], dword [esi]
xchg esi, eax
mov edi, edx
add edi, 0x14
xor ecx, ecx
mov eax, dword [esi + 0x40]
xchg esi, eax
rep movsw word es:[edi], word [esi]
xchg esi, eax
mov edi, dword [esi + 4]
push edi
push 0
push 0
push 9
push edx
push 0
call dword [0x4478e8]
mov edi, dword [edi]
lea eax, [edi + edi]
test edi, edi
jns 0x424101
mov eax, 0xffffffff
push eax
call fcn.00409130
add esp, 4
push dword [esi + 4]
push edi
push eax
push 9
push dword [esi + 8]
push 0
call dword [0x4478e8]
mov dword [ebx], 0xbb13b9f2
mov dword [ebx + 4], 0xbf19bd0f
mov dword [ebx + 8], 0x8332810f
mov dword [ebx + 0xc], 0x87848526
lea eax, [ebx + 0x10]
mov word [ebx + 0x10], 0
mov dword [esi], 0
mov ecx, dword [esi]
cmp ecx, 0x11
ja 0x42417e
nop
nop
nop
mov ecx, dword [esi]
mov edx, dword [esi]
movzx edx, byte [ebx + edx]
lea edi, [ecx - 0x15841ee9]
add ecx, 0x17
and ecx, edx
or edi, edx
sub edi, ecx
mov dword [esi + 0x10], edi
mov ecx, dword [esi + 0x10]
add cl, 0x5f
mov edx, dword [esi]
mov byte [ebx + edx], cl
inc dword [esi]
mov ecx, dword [esi]
cmp ecx, 0x12
jb 0x424150
mov ecx, 4
mov edx, dword [esi + 0x44]
mov edi, edx
xchg esi, ebx
rep movsd dword es:[edi], dword [esi]
xchg esi, ebx
add edx, 0x10
mov edi, edx
xor ecx, ecx
xchg esi, eax
rep movsw word es:[edi], word [esi]
xchg esi, eax
mov ebx, dword [esi + 0xc]
mov dword [ebx], 0x3bd339f2
mov dword [ebx + 4], 0x3fd93dcf
mov dword [ebx + 8], 0xc332c1cf
mov dword [ebx + 0xc], 0xc701c526
mov dword [ebx + 0x10], 0xcb26c925
mov dword [ebx + 0x14], 0xcf3ecd29
mov dword [ebx + 0x18], 0xd3d0d135
lea eax, [ebx + 0x1c]
mov dword [ebx + 0x1c], 0
mov word [ebx + 0x20], 0
mov dword [esi], 0
mov ecx, dword [esi]
cmp ecx, 0x21
ja 0x424237
nop
nop
nop
nop
nop
nop
mov ecx, dword [esi]
mov edx, dword [esi]
movzx edx, byte [ebx + edx]
lea edi, [ecx - 0x56cbb689]
mov ebx, edi
and ebx, edx
xor edi, edx
lea edi, [edi + ebx*2]
mov ebx, dword [esi + 0xc]
add ecx, 0x77
and ecx, edx
add ecx, ecx
sub edi, ecx
mov dword [esi + 0x10], edi
mov ecx, dword [esi + 0x10]
mov edx, ecx
xor edx, 0xbe
and ecx, 0x3e
lea ecx, [edx + ecx*2]
inc cl
mov edx, dword [esi]
mov byte [ebx + edx], cl
inc dword [esi]
mov ecx, dword [esi]
cmp ecx, 0x22
jb 0x4241f0
mov ecx, 7
mov edx, dword [esi + 0x28]
mov edi, edx
xchg esi, ebx
rep movsd dword es:[edi], dword [esi]
xchg esi, ebx
add edx, 0x1c
mov edi, edx
xor ecx, ecx
xchg esi, eax
rep movsw word es:[edi], word [esi]
xchg esi, eax
mov ebx, dword [esi + 0x2c]
mov dword [ebx], 0x833b815a
mov dword [ebx + 4], 0x9f219d0f
mov dword [ebx + 8], 0x9b2a992f
mov dword [ebx + 0xc], 0x97449526
mov dword [ebx + 0x10], 0x9352913a
lea eax, [ebx + 0x14]
mov word [ebx + 0x14], 0x6d92
mov dword [ebx + 0x16], 0
mov dword [ebx + 0x19], 0
mov dword [esi], 0
mov ecx, dword [esi]
cmp ecx, 0x1c
ja 0x4242d4
nop
nop
nop
nop
mov ecx, dword [esi]
mov edx, dword [esi]
movzx edx, byte [ebx + edx]
lea edi, [ecx + edx]
add edi, 0x440e75eb
add ecx, 0x440e75eb
and ecx, edx
add ecx, ecx
sub edi, ecx
mov dword [esi + 0x10], edi
mov ecx, dword [esi + 0x10]
add cl, 0x93
mov edx, dword [esi]
mov byte [ebx + edx], cl
inc dword [esi]
mov ecx, dword [esi]
cmp ecx, 0x1d
jb 0x4242a0
mov ecx, 5
mov edx, dword [esi + 0x38]
mov edi, edx
xchg esi, ebx
rep movsd dword es:[edi], dword [esi]
xchg esi, ebx
add edx, 0x14
mov edi, edx
mov ecx, 1
xchg esi, eax
rep movsw word es:[edi], word [esi]
xchg esi, eax
jmp case.0x4239ad.7
mov eax, dword [esi + 0x70]
add eax, 2
mov dword [esi + 0x30], eax
mov eax, dword [esi + 0x74]
lea eax, [eax + 2]
mov dword [esi + 0x64], eax
mov eax, dword [esi + 0x68]
add eax, 2
mov dword [esi + 0x60], eax
mov eax, dword [ebx]
mov ecx, dword [esi + 0x2c]
mov dword [ecx], eax
mov ecx, dword [esi + 0x78]
mov byte [ecx], 0
mov ecx, dword [esi + 0x44]
lea ebx, [ecx + 2]
mov ecx, 0xfffffffe
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp word [eax + ecx + 2], 0
lea ecx, [ecx + 2]
jne 0x424340
sar ecx, 1
mov eax, dword [esi + 0x28]
mov dword [eax], ecx
mov eax, dword [esi + 0xb4]
mov dword [eax], 0x4ba855ba
mov dword [eax + 4], 0x4fad49db
mov dword [eax + 8], 0x43d04da9
mov dword [eax + 0xc], 0x47b54162
mov dword [eax + 0x10], 0x7ba345d2
mov dword [eax + 0x14], 0x7fe379ee
lea ecx, [eax + 0x18]
mov dword [esi + 0xc], ecx
mov word [eax + 0x18], 0x7d7e
mov dword [eax + 0x1a], 0
mov dword [eax + 0x1e], 0
mov dword [eax + 0x22], 0
mov byte [eax + 0x26], 0
mov dword [esi], 0
mov ecx, dword [esi]
cmp ecx, 0x26
ja 0x4243f4
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [esi]
mov edx, dword [esi]
movzx edx, byte [eax + edx]
lea edi, [ecx + edx]
add edi, 0x136eb00d
add ecx, 0x136eb00d
and ecx, edx
add ecx, ecx
sub edi, ecx
mov dword [esi + 0x10], edi
mov ecx, dword [esi + 0x10]
add cl, 0xa5
mov edx, dword [esi]
mov byte [eax + edx], cl
inc dword [esi]
mov ecx, dword [esi]
cmp ecx, 0x27
jb 0x4243c0
mov edx, eax
mov eax, dword [esi + 0x44]
mov edi, eax
mov ecx, 6
xchg esi, edx
rep movsd dword es:[edi], dword [esi]
xchg esi, edx
lea edi, [eax + 0x18]
mov ecx, 1
mov eax, dword [esi + 0xc]
xchg esi, eax
rep movsw word es:[edi], word [esi]
xchg esi, eax
mov eax, dword [esi + 0x38]
mov eax, dword [eax]
mov ecx, dword [esi + 0x28]
mov ecx, dword [ecx]
add eax, ecx
inc eax
mov ecx, eax
and ecx, 0xd
xor eax, 0xd
lea edx, [eax + ecx*2]
lea ecx, [eax + ecx*2]
dec ecx
lea eax, [edx + edx]
add eax, 0xfffffffe
test ecx, ecx
jns 0x424441
mov eax, 0xffffffff
push eax
call fcn.00409130
add esp, 4
mov ecx, dword [esi + 0x40]
mov dword [ecx], eax
mov ecx, dword [esi + 0x50]
mov ecx, dword [ecx]
movzx edx, word [ecx]
test dx, dx
je 0x424471
add ecx, 2
nop
mov word [eax], dx
add eax, 2
movzx edx, word [ecx]
add ecx, 2
test dx, dx
jne 0x424460
mov word [eax], 0x5c
add eax, 2
mov ecx, dword [esi + 0x2c]
mov ecx, dword [ecx]
movzx edx, word [ecx]
test dx, dx
je 0x4244a1
add ecx, 2
nop
nop
nop
nop
nop
nop
nop
mov word [eax], dx
add eax, 2
movzx edx, word [ecx]
add ecx, 2
test dx, dx
jne 0x424490
mov word [eax], 0
mov ecx, dword [esi + 0x44]
movzx ecx, word [ecx]
test cx, cx
je 0x4244d1
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [ebx]
add ebx, 2
test cx, cx
jne 0x4244c0
mov word [eax], 0
push 0x60
push 3
push 0x120089
push dword [esi + 0x48]
mov eax, dword [esi + 0x40]
push dword [eax]
call fcn.0043a7e0
add esp, 0x14
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x443a28]
push 0
push dword [esi + 0x58]
mov ebx, dword [esi + 0x48]
push dword [ebx]
call fcn.0043ab70
add esp, 0xc
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x443a30]
mov eax, dword [esi + 0x58]
mov ebx, dword [eax]
lea eax, [ebx + 1]
push eax
call fcn.00409130
add esp, 4
mov edi, eax
mov eax, dword [esi + 0x88]
mov dword [eax], edi
push 0
push ebx
mov ebx, dword [esi + 0x48]
push edi
push dword [ebx]
call fcn.0043ac70
add esp, 0x10
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x443a38]
mov eax, dword [esi + 0x58]
mov eax, dword [eax]
mov byte [edi + eax], 0
push edi
call fcn.00401f20
add esp, 4
mov ecx, dword [esi + 0x84]
mov dword [ecx], eax
xor ecx, ecx
test eax, eax
setne cl
jmp dword [ecx*4 + 0x443a40]
jmp case.0x4239ad.16
push eax
call fcn.004029a0
add esp, 4
mov ebx, dword [esi + 0xa4]
mov dword [ebx], 0x8e859097
mov dword [ebx + 4], 0x9b98969c
mov dword [ebx + 8], 0x969e865c
mov dword [ebx + 0xc], 0x83808e84
mov dword [ebx + 0x10], 0x9695919d
mov word [ebx + 0x14], 0x8691
mov byte [ebx + 0x16], 0x38
mov word [ebx + 0x17], 0
mov byte [ebx + 0x19], 0
mov dword [esi], 0
mov ecx, dword [esi]
cmp ecx, 0x19
ja 0x42460d
mov ecx, dword [esi]
mov edx, dword [esi]
movzx edx, byte [ebx + edx]
lea edi, [ecx + edx]
add edi, 0xd885
add ecx, 0xd885
and ecx, edx
add ecx, ecx
sub edi, ecx
mov dword [esi + 0x10], edi
mov ecx, dword [esi + 0x10]
mov edx, ecx
or edx, 0x5c
and ecx, 0x5c
add ecx, edx
inc cl
mov edx, dword [esi]
mov byte [ebx + edx], cl
inc dword [esi]
mov ecx, dword [esi]
cmp ecx, 0x1a
jb 0x4245d0
push ebx
push eax
call fcn.00402d80
add esp, 8
mov ecx, 0xffffffff
mov edx, 0xfffffffe
mov edi, 0xfffffffd
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
add edx, 2
add edi, 3
cmp byte [eax + ecx + 1], 0
lea ecx, [ecx + 1]
jne 0x424630
mov dword [esi + 4], ecx
mov ecx, dword [esi + 4]
xor ecx, 0xfffffffe
and edx, 0xfffffffc
add edx, ecx
mov ecx, dword [esi + 4]
shr edi, 2
cmp byte [eax + edx + 1], 0x3d
je 0x424662
cmp byte [eax + ecx - 1], 0x2e
jne 0x424663
dec edi
movzx ecx, byte [eax + ecx - 2]
cmp ecx, 0x3d
mov dword [esi + 0x34], eax
je 0x424675
cmp ecx, 0x2e
jne 0x424676
dec edi
mov dword [esi + 0x9c], edi
lea eax, [edi + 1]
push eax
call fcn.00409130
add esp, 4
mov ecx, eax
mov eax, dword [esi + 0x80]
mov dword [esi + 0x24], ecx
mov dword [eax], ecx
cmp dword [esi + 4], 0
je 0x42478d
xor edx, edx
mov edi, 2
jmp 0x4246c0
mov edx, dword [esi + 8]
nop
nop
nop
nop
nop
lea eax, [edi + 4]
add edi, 2
cmp edi, ecx
mov edi, eax
jae 0x42478d
mov dword [esi + 0xc], edx
mov ebx, dword [esi + 0x34]
movzx eax, byte [ebx + edi - 2]
push eax
call fcn.004180b0
add esp, 4
mov byte [esi + 8], al
movzx eax, byte [ebx + edi - 1]
push eax
call fcn.004180b0
mov ecx, dword [esi + 4]
add esp, 4
movzx edx, byte [esi + 8]
shl dl, 2
mov ah, al
shr ah, 4
and ah, 3
or ah, dl
mov edx, dword [esi + 0x24]
mov ebx, dword [esi + 0xc]
mov byte [edx + ebx], ah
lea edx, [ebx + 1]
cmp edi, ecx
jae 0x4246b0
mov byte [esi + 8], al
mov eax, dword [esi + 0x34]
movzx eax, byte [eax + edi]
push eax
mov ebx, edx
call fcn.004180b0
mov edx, ebx
mov ecx, dword [esi + 4]
add esp, 4
cmp al, 0x40
je 0x4246b0
movzx edx, byte [esi + 8]
shl dl, 4
mov ah, al
shr ah, 2
and ah, 0xf
or ah, dl
mov ebx, dword [esi + 0xc]
lea edx, [ebx + 2]
mov dword [esi + 8], edx
mov edx, dword [esi + 0x24]
mov byte [edx + ebx + 1], ah
mov ebx, eax
lea eax, [edi + 1]
cmp eax, ecx
jae 0x4246a8
mov eax, dword [esi + 0x34]
movzx eax, byte [eax + edi + 1]
push eax
call fcn.004180b0
mov ecx, dword [esi + 4]
add esp, 4
cmp al, 0x40
mov edx, dword [esi + 8]
je 0x4246b0
shl bl, 6
add al, bl
mov edx, dword [esi + 0x24]
mov ebx, dword [esi + 0xc]
mov byte [edx + ebx + 2], al
add ebx, 3
mov edx, ebx
jmp 0x4246b0
mov eax, dword [esi + 0x9c]
add eax, 0xfffffffb
mov edi, dword [esi + 0xa0]
mov dword [edi], eax
mov eax, dword [esi + 0x24]
add eax, 5
mov dword [edi + 4], eax
mov ebx, dword [esi + 0x54]
mov dword [ebx], 0
mov dword [ebx + 4], 0
push 0x932a8d34
push dword [0x448900]
call fcn.00439c60
add esp, 8
push ebx
push 0
push 0
push 0
push 0
push 0
push edi
call eax
xor ecx, ecx
test eax, eax
setne cl
jmp dword [ecx*4 + 0x443a48]
mov edi, dword [esi + 0x5c]
mov dword [edi], 0x6bf66dbf
mov dword [edi + 4], 0x67b469f8
mov dword [edi + 8], 0x63ea65e8
mov dword [edi + 0xc], 0x5f5e61ec
lea eax, [edi + 0x10]
mov dword [edi + 0x14], 0
mov dword [edi + 0x10], 0
mov dword [esi], 0
mov ecx, dword [esi]
cmp ecx, 0x17
ja 0x424878
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [esi]
mov edx, dword [esi]
mov edi, dword [esi + 0x5c]
movzx edi, byte [edi + edx]
lea edx, [ecx + 0x92]
mov ebx, edi
not ebx
or ebx, edx
and edx, edi
mov edi, dword [esi + 0x5c]
add edx, ebx
neg edx
add ecx, edx
add ecx, 0x2f68e691
mov dword [esi + 0x10], ecx
mov ecx, dword [esi + 0x10]
mov edx, ecx
or edx, 1
and ecx, 1
add ecx, edx
inc cl
mov edx, dword [esi]
mov byte [edi + edx], cl
inc dword [esi]
mov ecx, dword [esi]
cmp ecx, 0x18
jb 0x424830
mov edx, edi
mov ebx, dword [esi + 0x68]
mov edi, ebx
mov ecx, 4
xchg esi, edx
rep movsd dword es:[edi], dword [esi]
xchg esi, edx
lea edi, [ebx + 0x10]
xor ecx, ecx
xchg esi, eax
rep movsw word es:[edi], word [esi]
xchg esi, eax
mov eax, dword [esi + 0x28]
mov eax, dword [eax]
mov ecx, eax
add ecx, 8
lea eax, [eax + eax + 0x10]
jns 0x4248a9
mov eax, 0xffffffff
push eax
call fcn.00409130
add esp, 4
mov ecx, dword [esi + 0x7c]
mov dword [ecx], eax
mov ecx, dword [esi + 0x2c]
mov ecx, dword [ecx]
movzx edx, word [ecx]
test dx, dx
je 0x4248e3
add ecx, 2
mov ebx, dword [esi + 0x54]
nop
nop
nop
nop
nop
nop
mov word [eax], dx
add eax, 2
movzx edx, word [ecx]
add ecx, 2
test dx, dx
jne 0x4248d0
jmp 0x4248e6
mov ebx, dword [esi + 0x54]
mov word [eax], 0
mov ecx, dword [esi + 0x68]
movzx ecx, word [ecx]
test cx, cx
je 0x424911
mov edx, dword [esi + 0x60]
nop
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x424900
mov word [eax], 0
mov eax, dword [esi + 0x8c]
mov ecx, dword [eax]
mov eax, dword [esi + 0x7c]
mov edi, dword [eax]
push dword [ebx]
push dword [ebx + 4]
push edi
call fcn.00409880
mov ecx, dword [esi + 0x78]
mov byte [ecx], al
xor eax, eax
test edi, edi
sete al
jmp dword [eax*4 + 0x443a50]
jmp dword [0x443a5c]
push ebx
call fcn.00409140
add esp, 4
xor eax, eax
test edi, edi
sete al
jmp dword [eax*4 + 0x443b30]
mov eax, dword [esi + 0x4c]
jmp dword [0x443b3c]
jmp dword [0x443ab4]
push edi
call fcn.00409140
add esp, 4
nop
push edi
call fcn.00409140
add esp, 4
jmp dword [0x443ab8]
mov eax, dword [esi + 0x4c]
jmp dword [0x443b3c]
jmp dword [0x443a68]
push 0x2e0ec9bb
push dword [0x4488ec]
call fcn.00439c60
add esp, 8
push dword [ebx + 4]
call eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
push 0x2e0ec9bb
push dword [0x4488ec]
call fcn.00439c60
add esp, 8
push dword [ebx + 4]
call eax
jmp dword [0x443a70]
mov eax, dword [case.0x4239ad.35]
mov ebx, dword [esi + 0x48]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp eax
mov eax, dword [esi + 0x80]
mov edi, dword [eax]
mov eax, dword [case.0x42370d.43]
nop
jmp eax
mov eax, dword [case.0x42370d.47]
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp eax
xor eax, eax
test edi, edi
sete al
jmp dword [eax*4 + 0x443aa8]
mov eax, dword [esi + 0x84]
push dword [eax]
call fcn.00402f70
add esp, 4
jmp dword [0x443acc]
mov eax, dword [esi + 0x88]
mov edi, dword [eax]
xor eax, eax
test edi, edi
sete al
jmp dword [eax*4 + 0x443ad0]
jmp dword [0x443adc]
push edi
call fcn.00409140
add esp, 4
nop
nop
nop
nop
nop
push edi
call fcn.00409140
add esp, 4
jmp dword [0x443ae4]
mov eax, dword [ebx]
mov dword [esi + 0x10], 0x20212e2f
mov dword [esi + 0x14], 0
mov dword [esi + 0x18], 0
mov dword [esi + 0x1c], 0
mov dword [esi + 0x3c], 0
mov ecx, dword [esi + 0x3c]
cmp ecx, 0xf
ja 0x424ae1
nop
nop
nop
nop
mov ecx, dword [esi + 0x3c]
mov edx, dword [esi + 0x3c]
movzx edx, byte [esi + edx + 0x10]
lea edi, [ecx - 0x13b63b5a]
and edi, edx
add ecx, edx
add ecx, 0xec49c4a6
add edi, edi
sub ecx, edi
mov dword [esi], ecx
mov ecx, dword [esi]
mov edx, ecx
or edx, 0x75
and ecx, 0x75
add ecx, edx
inc cl
mov edx, dword [esi + 0x3c]
mov byte [esi + edx + 0x10], cl
inc dword [esi + 0x3c]
mov ecx, dword [esi + 0x3c]
cmp ecx, 0x10
jb 0x424aa0
mov ecx, dword [0x4488f4]
test ecx, ecx
je case.0x4239ad.12
mov edx, dword [esi + 0x10]
xor edi, edi
mov ebx, dword [0x4488f8]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp dword [ebx + edi*8], 0x11081610
je 0x424b10
inc edi
cmp ecx, edi
jne 0x424b00
jmp case.0x4239ad.12
mov ecx, dword [ebx + edi*8 + 4]
cmp ecx, edx
je case.0x4239ad.12
push eax
push 1
push dword [0x4488fc]
push ecx
call fcn.00437c10
add esp, 0x10
nop
nop
nop
nop
nop
nop
mov eax, dword [case.0x42370d.67]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp eax
mov eax, dword [esi + 0x40]
mov eax, dword [eax]
xor ecx, ecx
test eax, eax
sete cl
mov ebx, dword [esi + 0xb0]
jmp dword [ecx*4 + 0x443af8]
push eax
call fcn.00409140
add esp, 4
mov eax, dword [case.0x42370d.69]
nop
nop
nop
nop
nop
nop
nop
jmp eax
mov eax, dword [case.0x42370d.77]
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp eax
mov eax, dword [esi + 0x78]
movzx eax, byte [eax]
jmp dword [eax*4 + 0x443b20]
mov dword [ebx], 0x8bc885fa
mov dword [ebx + 4], 0x8fed891b
mov dword [ebx + 8], 0xb3e08de9
mov dword [ebx + 0xc], 0xb7c5b192
mov dword [ebx + 0x10], 0xbb25b522
mov dword [ebx + 0x14], 0xbfdfb92c
mov dword [ebx + 0x18], 0xa3d7bdd7
mov dword [ebx + 0x1c], 0xa7cca1de
mov dword [ebx + 0x20], 0xab3ea5cd
mov dword [ebx + 0x24], 0xafc4a9c1
mov dword [ebx + 0x28], 0xd3caadca
lea eax, [ebx + 0x2c]
mov dword [ebx + 0x2c], 0xd1d2
mov dword [esi], 0
mov ecx, dword [esi]
cmp ecx, 0x2f
ja 0x424c40
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [esi]
mov edx, dword [esi]
movzx edi, byte [ebx + edx]
lea edx, [ecx - 0x40fb006b]
add ecx, 0x95
or ecx, edx
and ecx, edi
or edx, edi
sub edx, ecx
mov dword [esi + 0x10], edx
mov ecx, dword [esi + 0x10]
add cl, 0xed
mov edx, dword [esi]
mov byte [ebx + edx], cl
mov ecx, dword [esi]
mov edx, ecx
and edx, 1
xor ecx, 1
lea ecx, [ecx + edx*2]
mov dword [esi], ecx
mov ecx, dword [esi]
cmp ecx, 0x30
jb 0x424c00
mov edx, ebx
mov ebx, dword [esi + 0x74]
mov edi, ebx
mov ecx, 0xb
xchg esi, edx
rep movsd dword es:[edi], dword [esi]
xchg esi, edx
lea edi, [ebx + 0x2c]
mov ecx, 1
xchg esi, eax
rep movsw word es:[edi], word [esi]
xchg esi, eax
mov eax, dword [esi + 0x38]
mov eax, dword [eax]
mov ecx, dword [esi + 0x28]
mov ecx, dword [ecx]
add eax, ecx
add eax, 0x18
mov ecx, eax
xor ecx, 0xfffffffe
and eax, 0xfffffffe
lea edx, [ecx + eax*2]
lea ecx, [ecx + eax*2]
inc ecx
lea eax, [edx + edx]
add eax, 2
test ecx, ecx
jns 0x424c8c
mov eax, 0xffffffff
push eax
call fcn.00409130
add esp, 4
mov ecx, dword [esi + 0x94]
mov dword [ecx], eax
mov ecx, dword [esi + 0x50]
mov ecx, dword [ecx]
movzx edx, word [ecx]
test dx, dx
mov ebx, dword [esi + 0xac]
je 0x424cd1
add ecx, 2
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], dx
add eax, 2
movzx edx, word [ecx]
add ecx, 2
test dx, dx
jne 0x424cc0
mov word [eax], 0x5c
add eax, 2
mov ecx, dword [esi + 0x2c]
mov ecx, dword [ecx]
movzx edx, word [ecx]
test dx, dx
je 0x424d01
add ecx, 2
nop
nop
nop
nop
nop
nop
nop
mov word [eax], dx
add eax, 2
movzx edx, word [ecx]
add ecx, 2
test dx, dx
jne 0x424cf0
mov word [eax], 0
mov ecx, dword [esi + 0x74]
movzx ecx, word [ecx]
test cx, cx
je 0x424d31
mov edx, dword [esi + 0x64]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x424d20
mov word [eax], 0
mov dword [ebx], 0x8b7e8dbf
mov dword [ebx + 4], 0x870c8975
mov dword [ebx + 8], 0x83768579
mov dword [ebx + 0xc], 0x9f60817c
lea eax, [ebx + 0x10]
mov word [ebx + 0x10], 0x9d9c
mov dword [ebx + 0x12], 0
mov dword [ebx + 0x16], 0
mov dword [ebx + 0x1a], 0
mov word [ebx + 0x1e], 0
mov dword [esi], 0
mov ecx, dword [esi]
cmp ecx, 0x1f
ja 0x424dc3
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [esi]
mov edx, dword [esi]
movzx edx, byte [ebx + edx]
lea edi, [ecx - 0x206ae23e]
and edi, edx
add ecx, edx
add ecx, 0xdf951dc2
add edi, edi
sub ecx, edi
mov dword [esi + 0x10], ecx
mov ecx, dword [esi + 0x10]
add cl, 0xb2
mov edx, dword [esi]
mov byte [ebx + edx], cl
inc dword [esi]
mov ecx, dword [esi]
cmp ecx, 0x20
jb 0x424d90
mov edx, ebx
mov ebx, dword [esi + 0x70]
mov edi, ebx
mov ecx, 4
xchg esi, edx
rep movsd dword es:[edi], dword [esi]
xchg esi, edx
lea edi, [ebx + 0x10]
mov ecx, 1
xchg esi, eax
rep movsw word es:[edi], word [esi]
xchg esi, eax
mov eax, dword [esi + 0x28]
mov eax, dword [eax]
mov ecx, eax
add ecx, 9
lea eax, [eax + eax + 0x12]
jns 0x424df7
mov eax, 0xffffffff
push eax
call fcn.00409130
add esp, 4
mov ecx, dword [esi + 0x90]
mov dword [ecx], eax
mov ecx, dword [esi + 0x2c]
mov ecx, dword [ecx]
movzx edx, word [ecx]
test dx, dx
mov edi, dword [esi + 0xa8]
je 0x424e31
add ecx, 2
nop
nop
mov word [eax], dx
add eax, 2
movzx edx, word [ecx]
add ecx, 2
test dx, dx
jne 0x424e20
mov word [eax], 0
mov ecx, dword [esi + 0x70]
movzx ecx, word [ecx]
test cx, cx
je 0x424e61
mov edx, dword [esi + 0x30]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x424e50
mov word [eax], 0
mov dword [edi], 0x9b9a9942
mov dword [edi + 4], 0
mov dword [edi + 8], 0
mov byte [edi + 0xc], 0
mov dword [esi], 0
mov eax, dword [esi]
cmp eax, 0xc
ja 0x424ed7
nop
nop
nop
nop
nop
mov eax, dword [esi]
mov ecx, dword [esi]
movzx edx, byte [edi + ecx]
lea ecx, [eax + edx]
add ecx, 0x5cd1d144
add eax, 0x5cd1d144
and eax, edx
add eax, eax
mov edx, ecx
not edx
and edx, eax
not eax
and eax, ecx
sub eax, edx
mov dword [esi + 0x10], eax
mov eax, dword [esi + 0x10]
mov ecx, eax
xor ecx, 0x23
and eax, 0x23
lea eax, [ecx + eax*2]
inc al
mov ecx, dword [esi]
mov byte [edi + ecx], al
inc dword [esi]
mov eax, dword [esi]
cmp eax, 0xd
jb 0x424e90
mov eax, dword [esi + 0x94]
mov ecx, edi
mov edi, dword [eax]
mov eax, dword [esi + 0x90]
mov ebx, dword [eax]
push 0
push 0
push 0xc00000
push ecx
push edi
push ebx
mov eax, dword [esi + 0x8c]
push dword [eax]
call fcn.0041aff0
add esp, 0x1c
mov ecx, dword [esi + 0x6c]
or byte [ecx], al
xor eax, eax
test ebx, ebx
sete al
jmp dword [eax*4 + 0x443b28]
xor eax, eax
test edi, edi
sete al
jmp dword [eax*4 + 0x443b30]
push edi
call fcn.00409140
add esp, 4
mov eax, dword [esi + 0x4c]
jmp dword [0x443b3c]
add dword [eax], 4
nop
nop
nop
nop
nop
mov ebx, dword [eax]
add ebx, 4
mov dword [eax], ebx
jmp dword [0x443b40]
push edi
call fcn.00409140
add esp, 4
push edi
call fcn.00409140
add esp, 4
jmp dword [0x443a60]
xor eax, eax
mov ecx, dword [esi + 0x98]
cmp ebx, dword [ecx]
setne al
jmp dword [eax*4 + 0x443a20]
mov eax, dword [esi + 0x50]
mov eax, dword [eax]
mov ecx, dword [case.0x424f11.10]
mov edi, dword [esi + 0x6c]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp ecx
mov ecx, dword [case.0x42370d.94]
nop
nop
nop
nop
nop
nop
nop
nop
jmp ecx
xor ecx, ecx
test eax, eax
sete cl
jmp dword [ecx*4 + 0x443b68]
push eax
call fcn.00409140
add esp, 4
jmp dword [0x443b74]
jmp dword [0x443b74]
movzx eax, byte [edi]
jmp dword [0x443b7c]
movzx eax, byte [edi]
jmp dword [0x443b7c]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
int3
jae 0x42a848
enter 0xffffffffffffe0ff, 0x24
add dword [edi], ecx
mov dh, 0xc0
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
add al, 0
add byte [ebx - 0x1f5e77f4], cl
inc edi
inc esp
add byte [0x4826e5b1], dh
sub ecx, eax
xor eax, eax
jmp ecx
int1
shr dword [ebx], 1
fbstp tbyte [edi]
mov eax, dword [esp + 0x3a4]
add eax, dword [eax]
add byte [ebx + 0xd8b8804], cl
lodsb al, byte [esi]
dec eax
inc esp
add byte [ecx - 0x32aacc0f], al
push cs
add eax, dword [eax]
add byte [ebx + 0xd8b8804], cl
lodsb al, byte [esi]
dec eax
inc esp
add byte [ecx - 0x32aacc0f], al
push cs
sub eax, ecx
mov edi, dword [esp + 0x200]
jmp eax
and al, 0x78
add eax, dword [eax]
add byte [ebx + 0xd8b8804], cl
hlt
inc esp
add byte [ecx + 0x5be24ef2], al
mov ebp, dword [ecx]
sar edi, 1
loope 0x42a864
mov word [eax + eax], fs
add eax, dword [eax]
add byte [ecx - 0x21a28f0f], al
add eax, 0x5c24848b
add eax, dword [eax]
add byte [ebx + 0xd8b8804], cl
and al, 0x49
inc esp
add byte [ecx - 0x14afdc0f], al
ret
jne 0x42a99d
mov ecx, esi
shr ecx, 2
mov edi, eax
mov ebx, edx
xchg esi, ebx
rep movsd dword es:[edi], dword [esi]
xchg esi, ebx
mov ecx, esi
and ecx, 0xfffffffc
add eax, ecx
add edx, ecx
mov ebx, esi
and ebx, 3
mov ecx, ebx
shr ecx, 1
mov dword [esp + 0x254], edx
mov edi, eax
mov dword [esp + 0x250], esi
mov esi, dword [esp + 0x254]
xchg esi, esi
rep movsw word es:[edi], word [esi]
xchg esi, esi
mov esi, dword [esp + 0x250]
mov ecx, ebx
add ecx, 1
xor ebx, 0xffffffff
or ebx, 1
add ecx, ebx
cmp ecx, 0
mov ebx, dword [esp + 0x2c]
je 0x42a9c8
and esi, 2
add edx, esi
add eax, esi
mov esi, edx
mov edi, eax
add ecx, 0xffffffff
add esi, 1
mov dl, byte [edx]
inc dword [ebx + 0x128a01c6]
add edi, 1
mov byte [eax], dl
cmp ecx, 0
mov edx, esi
mov eax, edi
je 0x42a9c6
jmp 0x42a985
cmp esi, 0
mov ebx, dword [esp + 0x2c]
je 0x42a9c8
add edx, ecx
add eax, ecx
mov ecx, edx
mov edi, eax
add esi, 0xffffffff
add ecx, 0xffffffff
mov dl, byte [edx]
add edi, 0xffffffff
dec dword [eax + 0xfe8310]
dec dword [eax + 0xfe8310]
mov edx, ecx
mov eax, edi
jne 0x42a9ae
jmp 0x42a9c8
jmp 0x42a9c8
mov ecx, dword [esp + 0x2ac]
xor ecx, 0x306813c3
mov eax, dword [esp + 0x44c]
mov eax, dword [eax + ecx*4]
mov ecx, dword [0x44479c]
xor ecx, 0x74bb52be
sub eax, ecx
jmp eax
dec ecx
or byte [ecx - 0x2e00dbfc], cl
sub esp, 4
mov ecx, dword [esp + 0x2f8]
xor ecx, 0x30474d37
mov eax, dword [esp + 0x374]
mov eax, dword [eax + ecx*4]
mov ecx, dword [0x4448fc]
xor ecx, 0x5663d0b4
sub eax, ecx
jmp eax
ljmp 0xe8c1:0xd089ca01
dec ecx
inc esp
add byte [ecx + 0x6a90b9f1], al
and ebp, dword [ecx]
enter 0xffffffffffffe0ff, 0xffffffffffffff8b
push cs
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.004293a0
mov dword [esp + 0xdc], eax
mov eax, dword [esp + 0xdc]
add byte [eax], al
add byte [eax], al
sub eax, 0xffffffff
mov dword [esp], eax
call fcn.00409130
mov ecx, dword [ebp + 8]
mov dword [ecx + 0x10], eax
mov ecx, dword [esp + 0x238]
mov eax, dword [esp + 0x218]
shl eax, 1
add ecx, eax
mov ebx, dword [esp + 0x238]
mov edx, dword [esp + 0xdc]
add byte [eax], al
add byte [ebx + 0x458b01c2], al
or byte [ebx - 0xf76ef90], cl
add byte [eax], al
add byte [ebx + 0x458b01c2], al
or byte [ebx - 0xf76ef90], cl
add eax, edx
mov edi, eax
add edi, 0xffffffff
cmp edi, esi
ja 0x42ab24
jmp 0x42ac04
mov dword [esp + 0x258], eax
cmp ecx, 0
sete al
mov byte [esp + 0x6b], al
mov dword [esp + 0x25c], ecx
mov edx, ebx
sub edx, ecx
setb dl
or al, dl
test al, 1
jne 0x42ab4e
jmp 0x42ac04
mov edx, ebx
mov bx, word [edx]
cmp bx, 0
jne 0x42ab5e
jmp 0x42ac04
add edx, 2
mov dword [esp + 0x270], edx
mov eax, esi
xor eax, 0xffffffff
add eax, dword [esp + 0x258]
cmp bx, 0x80
jae 0x42ab84
mov byte [esi], bl
mov ecx, 1
jmp 0x42abe8
cmp bx, 0x800
setb cl
cmp eax, 1
seta dl
and dl, cl
test dl, 1
jne 0x42ab9b
jmp 0x42abb7
mov dx, bx
shr dx, 6
or dl, 0xc0
mov byte [esi], dl
and bl, 0x3f
or bl, 0x80
mov byte [esi + 1], bl
mov ecx, 2
jmp 0x42abe8
xor ecx, ecx
cmp eax, 2
jbe 0x42abe8
mov dx, bx
shr dx, 0xc
or dl, 0xe0
mov byte [esi], dl
mov dx, bx
shr dx, 6
and dl, 0x3f
or dl, 0x80
mov byte [esi + 1], dl
and bl, 0x3f
or bl, 0x80
mov byte [esi + 2], bl
mov ecx, 3
add esi, ecx
cmp esi, edi
mov ebx, dword [esp + 0x270]
mov al, byte [esp + 0x6b]
mov ecx, dword [esp + 0x25c]
jb case.0x42370d.211
mov byte [esi], 0
mov al, byte [esp + 0xd8]
mov byte [esp + 0x100], al
mov byte [esp + 0x1f0], 0xa7
mov byte [esp + 0x1f1], 0xb0
mov byte [esp + 0x1f2], 0xcc
mov byte [esp + 0x1f3], 0xb7
mov byte [esp + 0x1f4], 0xd3
mov byte [esp + 0x1f5], 0xda
mov byte [esp + 0x1f6], 0xd5
mov byte [esp + 0x1f7], 0x47
mov byte [esp + 0x1f8], 0
mov dword [esp + 0x50], 0
mov eax, dword [esp + 0x50]
cmp eax, 9
jae 0x42acc4
jmp 0x42ac70
mov eax, dword [esp + 0x50]
mov ecx, dword [esp + 0x50]
movzx ecx, byte [esp + ecx + 0x1f0]
mov edx, eax
add edx, 0x963e138c
lea eax, [eax + ecx - 0x69c1ec74]
and edx, ecx
add edx, edx
sub eax, edx
mov dword [esp + 0x528], eax
mov eax, dword [esp + 0x528]
add al, 0x2c
mov ecx, dword [esp + 0x50]
mov byte [esp + ecx + 0x1f0], al
mov eax, dword [esp + 0x50]
inc eax
mov dword [esp + 0x50], eax
mov eax, dword [esp + 0x50]
cmp eax, 9
jb 0x42ac70
jmp 0x42acc4
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x10]
lea ecx, [esp + 0x1f0]
mov dword [esp + 4], ecx
mov dword [esp], eax
call fcn.0040d220
mov dword [esp + 0x214], eax
mov eax, dword [esp + 0xdc]
mov ecx, dword [esp + 0x214]
mov edx, dword [ebp + 8]
add edx, 0x10
mov edi, dword [esp + 0x2a0]
xor edi, 0x3d2fc943
mov esi, dword [esp + 0x454]
mov esi, dword [esi + edi*4]
mov edi, dword [0x44478c]
xor edi, 0x4adc96c6
sub esi, edi
jmp esi
iretd
add byte [eax], al
add bh, al
inc esp
and al, 0xc
add byte [eax], al
add byte [eax], al
mov dword [esp + 8], 0
mov dword [esp + 4], 0xffffffff
mov dword [esp], 0
mov eax, dword [sym.imp.ole32.dll_CoInitializeSecurity]
call eax
sub esp, 0x24
mov eax, ebx
fdiv dword [0x16532153]
fdiv dword [0x16532153]
mov ecx, dword [esp + 0x340]
mov eax, dword [ecx + eax*4]
mov ecx, dword [0x444954]
xor ecx, 0x31cf7ae8
sub eax, ecx
jmp eax
rol byte [ebx - 0x7b38fb14], 1
and al, 0xac
add eax, dword [eax]
add byte [eax], al
add byte [eax], al
add byte [ebx + 0x3b02484], cl
add byte [eax], al
mov ecx, dword [esp + 0x3ac]
mov eax, dword [eax + ecx*4]
mov ecx, dword [0x44489c]
xor ecx, 0xf26b1e50
sub eax, ecx
jmp eax
add al, byte [eax]
add byte [0x1da900cc], dh
mov ecx, dword [esp + 0x33c]
mov eax, dword [ecx + eax*4]
mov ecx, dword [0x44495c]
xor ecx, 0xa748c45a
sub eax, ecx
jmp eax
test byte [eax + edx*8], ah
add dword [eax], eax
add bh, bl
mov byte [esp + 0x1d1], 0x35
mov byte [esp + 0x1d2], 0xdb
mov byte [esp + 0x1d3], 0x33
mov byte [esp + 0x1d4], 0xe6
mov byte [esp + 0x1d5], 0x31
mov byte [esp + 0x1d6], 0x30
mov byte [esp + 0x1d7], 0xcf
mov byte [esp + 0x1dc], 0
mov dword [esp + 0x1d8], 0
mov dword [esp + 0x54], 0
mov eax, dword [esp + 0x54]
cmp eax, 0xd
jae 0x42af88
jmp 0x42af37
mov eax, dword [esp + 0x54]
mov ecx, dword [esp + 0x54]
movzx ecx, byte [esp + ecx + 0x1d0]
mov edx, eax
add edx, 0x79
add eax, ecx
and edx, ecx
add edx, edx
sub eax, edx
add eax, 0xa15afa79
mov dword [esp + 0x52c], eax
mov eax, dword [esp + 0x52c]
add al, 0xb1
mov ecx, dword [esp + 0x54]
mov byte [esp + ecx + 0x1d0], al
mov eax, dword [esp + 0x54]
inc eax
mov dword [esp + 0x54], eax
mov eax, dword [esp + 0x54]
cmp eax, 0xd
jb 0x42af37
jmp 0x42af88
lea eax, [esp + 0x1d0]
mov dword [esp], eax
mov eax, dword [sym.imp.OLEAUT32.dll_SysReAllocString]
call eax
sub esp, 4
mov dword [esp + 0x228], eax
mov al, byte [esp + 0xe4]
mov byte [esp + 0x108], al
mov byte [esp + 0x118], 0xe3
mov byte [esp + 0x119], 0x31
mov byte [esp + 0x11a], 0xf7
mov byte [esp + 0x11b], 0x33
mov byte [esp + 0x11c], 0xe8
mov byte [esp + 0x11d], 0x35
mov byte [esp + 0x11e], 0xf3
mov byte [esp + 0x11f], 0x37
mov byte [esp + 0x120], 0xb
mov byte [esp + 0x121], 0xc9
mov byte [esp + 0x122], 0x1e
mov byte [esp + 0x123], 0xcb
mov byte [esp + 0x124], 0xec
mov byte [esp + 0x125], 0xcd
mov byte [esp + 0x126], 0xf4
mov byte [esp + 0x127], 0xcf
mov byte [esp + 0x128], 0xe0
mov byte [esp + 0x129], 0xc1
mov byte [esp + 0x12a], 4
mov byte [esp + 0x12b], 0xc3
mov byte [esp + 0x12c], 0x16
mov byte [esp + 0x12d], 0xc5
mov byte [esp + 0x12e], 0x19
mov byte [esp + 0x12f], 0xc7
mov byte [esp + 0x130], 5
mov byte [esp + 0x131], 0xd9
mov byte [esp + 0x132], 0xfa
mov byte [esp + 0x133], 0xdb
mov byte [esp + 0x134], 0xb
mov byte [esp + 0x135], 0xdd
mov byte [esp + 0x136], 0x27
mov byte [esp + 0x137], 0xdf
mov byte [esp + 0x138], 0x2e
mov byte [esp + 0x139], 0xd1
mov byte [esp + 0x13a], 0xe1
mov byte [esp + 0x13b], 0xd3
mov byte [esp + 0x13c], 0xe6
mov byte [esp + 0x13d], 0xd5
mov byte [esp + 0x13e], 0x39
mov byte [esp + 0x13f], 0xd7
test byte [edi + edi], ah
add dword [eax], eax
add bh, dl
test byte [edi + edi], ah
add dword [eax], eax
add bh, dl
mov byte [esp + 0x140], 0x37
mov byte [esp + 0x141], 0xe9
mov byte [esp + 0x142], 0x1a
mov byte [esp + 0x143], 0xeb
mov byte [esp + 0x144], 9
mov byte [esp + 0x145], 0xed
mov byte [esp + 0x146], 0x1c
mov byte [esp + 0x147], 0xef
mov byte [esp + 0x148], 1
mov byte [esp + 0x149], 0xe1
mov byte [esp + 0x14a], 0x16
test byte [edx + ecx*2], ah
add dword [eax], eax
add byte [esi], dl
test byte [edx + ecx*2], ah
add dword [eax], eax
add byte [esi], dl
mov byte [esp + 0x14b], 0xe3
mov byte [esp + 0x14c], 0x1d
mov byte [esp + 0x14d], 0xe5
mov byte [esp + 0x14e], 0x18
mov byte [esp + 0x14f], 0xe7
mov byte [esp + 0x150], 0x1f
mov byte [esp + 0x151], 0xf9
mov byte [esp + 0x152], 0x29
mov byte [esp + 0x153], 0xfb
mov byte [esp + 0x154], 0x75
mov byte [esp + 0x155], 0xfd
mov byte [esp + 0x156], 0xd
mov byte [esp + 0x157], 0xff
mov byte [esp + 0x158], 4
mov byte [esp + 0x159], 0xf1
mov byte [esp + 0x15a], 0x17
mov byte [esp + 0x15b], 0xf3
mov byte [esp + 0x15c], 9
mov byte [esp + 0x15d], 0xf5
mov byte [esp + 0x15e], 0xf6
mov byte [esp + 0x15f], 0xf7
mov dword [esp + 0x163], 0
mov dword [esp + 0x160], 0
mov dword [esp + 0x58], 0
mov eax, dword [esp + 0x58]
cmp eax, 0x4f
jae 0x42b260
jmp 0x42b21a
mov eax, dword [esp + 0x58]
mov ecx, dword [esp + 0x58]
movzx ecx, byte [esp + ecx + 0x118]
add eax, 0xd21fad78
xor eax, ecx
mov dword [esp + 0x530], eax
mov eax, dword [esp + 0x530]
add al, 0xb8
mov ecx, dword [esp + 0x58]
mov byte [esp + ecx + 0x118], al
mov eax, dword [esp + 0x58]
inc eax
mov dword [esp + 0x58], eax
mov eax, dword [esp + 0x58]
cmp eax, 0x4f
jb 0x42b21a
jmp 0x42b260
lea eax, [esp + 0x118]
mov dword [esp], eax
mov eax, dword [sym.imp.OLEAUT32.dll_SysReAllocString]
call eax
sub esp, 4
mov dword [esp + 0x224], eax
mov eax, dword [esp + 0xb8]
add byte [eax], al
add byte [ebx + 0x224248c], cl
add byte [eax], al
add byte [eax], al
add byte [ebx + 0x224248c], cl
add byte [eax], al
mov edx, dword [esp + 0x228]
mov esi, dword [eax]
mov esi, dword [esi + 0x50]
lea edi, [esp + 0xe0]
mov dword [esp + 0x14], edi
mov dword [esp + 8], ecx
mov dword [esp + 4], edx
mov dword [esp], eax
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0x30
call esi
sub esp, 0x18
not eax
shr eax, 0x1f
mov dword [esp + 0x4c0], eax
mov eax, dword [esp + 0x4c4]
mov ecx, dword [esp + 0x4c0]
mov eax, dword [eax + ecx*4]
mov ecx, dword [0x4446d8]
xor ecx, 0xaf8943df
sub eax, ecx
jmp eax
int1
and esi, dword [esi + esi + 1]
mov eax, dword [esp + 0x438]
mov eax, dword [eax + ecx*4]
mov ecx, dword [0x4447bc]
xor ecx, 0xc9f9c4a6
sub eax, ecx
jmp eax
invalid
int1
cmp byte [edi], ch
lodsb al, byte [esi]
cmc
sub eax, ecx
jmp eax
add byte [ecx + 0x4489240c], cl
and al, 4
call fcn.004293a0
mov dword [esp + 0x20c], eax
mov eax, dword [esp + 0x20c]
add eax, 1
mov dword [esp], eax
call fcn.00409130
mov dword [esp + 0x34], eax
mov esi, dword [esp + 0x1e8]
mov eax, dword [esp + 0x210]
shl eax, 1
add esi, eax
mov ecx, dword [esp + 0x1e8]
mov edx, dword [esp + 0x20c]
xchg esp, eax
and al, 0xc
add al, byte [eax]
add byte [ebx + 0x448b01c2], al
and al, 0x34
xchg esp, eax
and al, 0xc
add al, byte [eax]
add byte [ebx + 0x448b01c2], al
and al, 0x34
mov edi, eax
add edi, edx
mov dword [esp + 0x264], edi
add edi, 0xffffffff
cmp edi, eax
ja 0x42b55b
jmp 0x42b66d
mov dword [esp + 0xc4], eax
cmp esi, 0
sete al
mov edx, ecx
mov dword [esp + 0x26c], esi
mov byte [esp + 0x6a], al
mov ecx, edx
mov edx, ecx
sub edx, esi
setb dl
or al, dl
test al, 1
jne 0x42b589
jmp 0x42b666
mov bx, word [ecx]
cmp bx, 0
invalid
mov edx, ecx
jne 0x42b59d
add byte [ecx - 0x74f68a36], cl
pop esp
and al, 0x2c
mov ebx, dword [esp + 0x2c]
jmp 0x42b666
add edx, 2
mov eax, dword [esp + 0xc4]
mov ecx, eax
xor ecx, 0xffffffff
add ecx, dword [esp + 0x264]
cmp bx, 0x80
jae 0x42b5c6
mov byte [eax], bl
mov esi, 1
jmp 0x42b646
mov dword [esp + 0xcc], edx
cmp bx, 0x800
setb dh
cmp ecx, 1
seta dl
and dl, dh
test dl, 1
jne 0x42b5e4
jmp 0x42b607
mov dx, bx
shr dx, 6
push es
push es
or dl, 0xc0
mov byte [eax], dl
and bl, 0x3f
or bl, 0x80
mov byte [eax + 1], bl
mov esi, 2
mov edx, dword [esp + 0xcc]
jmp 0x42b646
xor esi, esi
cmp ecx, 2
mov edx, dword [esp + 0xcc]
add byte [eax], al
add byte [eax], al
jbe 0x42b646
mov dx, bx
shr dx, 0xc
or dl, 0xe0
mov byte [eax], dl
mov dx, bx
shr dx, 6
and dl, 0x3f
or dl, 0x80
mov byte [eax + 1], dl
mov edx, dword [esp + 0xcc]
and bl, 0x3f
or bl, 0x80
mov byte [eax + 2], bl
mov esi, 3
add eax, esi
mov dword [esp + 0xc4], eax
cmp eax, edi
mov ebx, dword [esp + 0x2c]
mov esi, dword [esp + 0x26c]
mov al, byte [esp + 0x6a]
push 0xf
or byte [edi], 0xff
invalid
invalid
push 0xf
or byte [edi], 0xff
invalid
mov eax, dword [esp + 0xc4]
mov byte [eax], 0
mov eax, dword [esp + 0x34]
add eax, 6
mov ecx, dword [ebp + 8]
add ecx, 0x14
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 8], 2
call fcn.00431cd0
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x28]
mov ecx, eax
inc ecx
mov dword [esp + 0x28], ecx
mov byte [eax], 0x2e
mov eax, dword [esp + 0x34]
add eax, 4
mov ecx, dword [esp + 0x28]
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 8], 2
call fcn.00431cd0
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x28]
mov ecx, eax
inc ecx
mov dword [esp + 0x28], ecx
mov byte [eax], 0x2e
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0x28]
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 8], 4
call fcn.00431cd0
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x28]
mov ecx, eax
inc ecx
mov dword [esp + 0x28], ecx
mov byte [eax], 0x20
mov eax, dword [esp + 0x34]
add eax, 8
mov ecx, dword [esp + 0x28]
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 8], 2
call fcn.00431cd0
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x28]
mov ecx, eax
inc ecx
mov dword [esp + 0x28], ecx
mov byte [eax], 0x3a
mov eax, dword [esp + 0x34]
add eax, 0xa
mov ecx, dword [esp + 0x28]
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 8], 2
call fcn.00431cd0
add byte gs:[eax], al
add byte gs:[eax], al
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x28]
mov ecx, eax
inc ecx
mov dword [esp + 0x28], ecx
mov byte [eax], 0x3a
mov eax, dword [esp + 0x34]
add eax, 0xc
mov ecx, dword [esp + 0x28]
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 8], 2
call fcn.00431cd0
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x28]
mov byte [eax], 0
mov ecx, dword [esp + 0x2bc]
xor ecx, 0xc100324
mov eax, dword [esp + 0x410]
mov eax, dword [eax + ecx*4]
mov ecx, dword [0x4447fc]
xor ecx, 0xa4d4d6db
sub eax, ecx
jmp eax
rol byte [edx], 1
add byte [eax], al
xor edx, 0x1ebe3d53
push ebx
cmp eax, 0x8c8b1ebe
and al, 0xcc
add eax, dword [eax]
add byte [ebx + 0x158b910c], cl
push 0x81004448
mov eax, 0x2939a12c
sar edi, 1
invalid
push ebx
cmp eax, 0x8c8b1ebe
and al, 0xcc
add eax, dword [eax]
add byte [ebx + 0x158b910c], cl
push 0x81004448
mov eax, 0x2939a12c
sar edi, 1
loope 0x42b7d4
int3
xor al, ah
std
dec dword [edx - 0x77c3dbbc]
test byte [esp + ecx], ah
add dword [eax], eax
add dh, al
inc esp
and al, 0x70
jecxz 0x42b7c7
inc esp
and al, 0x71
lodsd eax, dword [esi]
mov byte [esp + 0x72], 0xcb
mov byte [esp + 0x73], 0xab
mov byte [esp + 0x74], 0x38
mov byte [esp + 0x75], 0xa9
mov byte [esp + 0x76], 0x4a
and al, 0x76
dec edx
and al, 0x76
dec edx
mov byte [esp + 0x77], 0xd7
mov byte [esp + 0x78], 0xbd
mov byte [esp + 0x79], 0xd5
mov byte [esp + 0x7a], 0x41
mov byte [esp + 0x7b], 0xd3
mov byte [esp + 0x7c], 0x42
mov byte [esp + 0x7d], 0xd1
mov byte [esp + 0x7e], 0xde
mov byte [esp + 0x7f], 0xdf
mov dword [esp + 0x84], 0
mov dword [esp + 0x80], 0
mov dword [esp + 0x5c], 0
mov eax, dword [esp + 0x5c]
cmp eax, 0x18
jae 0x42b8be
jmp 0x42b874
mov eax, dword [esp + 0x5c]
mov ecx, dword [esp + 0x5c]
movzx ecx, byte [esp + ecx + 0x70]
mov edx, eax
add edx, 0x9663ca3a
add eax, 0x3a
and eax, ecx
or edx, ecx
sub edx, eax
mov dword [esp + 0x534], edx
mov eax, dword [esp + 0x534]
add al, 0x6a
mov ecx, dword [esp + 0x5c]
mov byte [esp + ecx + 0x70], al
mov eax, dword [esp + 0x5c]
inc eax
mov dword [esp + 0x5c], eax
mov eax, dword [esp + 0x5c]
cmp eax, 0x18
jb 0x42b874
jmp 0x42b8be
mov dword [esp + 0x48c], 1
mov eax, dword [esp + 0x490]
mov ecx, dword [esp + 0x48c]
mov eax, dword [eax + ecx*4]
mov ecx, dword [0x44472c]
xor ecx, 0xbe5c2da2
sub eax, ecx
jmp eax
mov ecx, edx
mov edx, ecx
sub edx, esi
setb dl
or al, dl
test al, 1
jne 0x42ba69
jmp 0x42bb46
mov bx, word [ecx]
cmp bx, 0
mov edx, ecx
jne 0x42ba7d
mov ebx, dword [esp + 0x2c]
jmp 0x42bb46
add edx, 2
mov eax, dword [esp + 0xc0]
add cl, byte [ebx + 0xc02484]
add byte [eax], al
mov ecx, eax
xor ecx, 0xffffffff
add ecx, dword [esp + 0x260]
cmp bx, 0x80
jae 0x42baa6
mov byte [eax], bl
mov esi, 1
jmp 0x42bb26
mov dword [esp + 0xc8], edx
cmp bx, 0x800
setb dh
cmp ecx, 1
seta dl
and dl, dh
test dl, 1
jne 0x42bac4
jmp 0x42bae7
mov dx, bx
shr dx, 6
or dl, 0xc0
mov byte [eax], dl
and bl, 0x3f
or bl, 0x80
mov byte [eax + 1], bl
mov esi, 2
mov edx, dword [esp + 0xc8]
jmp 0x42bb26
xor esi, esi
cmp ecx, 2
mov edx, dword [esp + 0xc8]
jbe 0x42bb26
mov dx, bx
shr dx, 0xc
or dl, 0xe0
mov byte [eax], dl
mov dx, bx
shr dx, 6
and dl, 0x3f
or dl, 0x80
mov byte [eax + 1], dl
mov edx, dword [esp + 0xc8]
and bl, 0x3f
or bl, 0x80
mov byte [eax + 2], bl
mov esi, 3
add eax, esi
mov dword [esp + 0xc0], eax
cmp eax, edi
mov ebx, dword [esp + 0x2c]
mov esi, dword [esp + 0x268]
mov al, byte [esp + 0x69]
jb 0x42ba55
mov eax, dword [esp + 0xc0]
mov byte [eax], 0
mov eax, dword [esp + 0x30]
add eax, 6
mov ecx, dword [ebp + 8]
add ecx, 0x2a
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 8], 2
call fcn.00431cd0
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x24]
mov ecx, eax
inc ecx
mov dword [esp + 0x24], ecx
and al, 0xc6
add byte [esi], ch
and al, 0xc6
add byte [esi], ch
mov eax, dword [esp + 0x30]
add eax, 4
mov ecx, dword [esp + 0x24]
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 8], 2
call fcn.00431cd0
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x24]
mov ecx, eax
inc ecx
mov dword [esp + 0x24], ecx
mov byte [eax], 0x2e
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x24]
and al, 0x24
and al, 0x24
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 8], 4
call fcn.00431cd0
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x24]
mov ecx, eax
inc ecx
mov dword [esp + 0x24], ecx
mov byte [eax], 0x20
mov eax, dword [esp + 0x30]
add eax, 8
mov ecx, dword [esp + 0x24]
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 8], 2
call fcn.00431cd0
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x24]
mov ecx, eax
inc ecx
mov dword [esp + 0x24], ecx
mov byte [eax], 0x3a
mov eax, dword [esp + 0x30]
add eax, 0xa
mov ecx, dword [esp + 0x24]
mov dword [esp + 4], eax
mov dword [esp], ecx
or al, 0x24
or al, 0x24
mov dword [esp + 8], 2
call fcn.00431cd0
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x24]
mov ecx, eax
inc ecx
mov dword [esp + 0x24], ecx
mov byte [eax], 0x3a
mov eax, dword [esp + 0x30]
add eax, 0xc
mov ecx, dword [esp + 0x24]
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 8], 2
call fcn.00431cd0
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x24]
mov byte [eax], 0
mov ecx, dword [esp + 0x2d4]
xor ecx, 0x14c3b311
mov eax, dword [esp + 0x3c0]
mov eax, dword [eax + ecx*4]
mov ecx, dword [0x44487c]
xor ecx, 0x896bc9c0
sub eax, ecx
jmp eax
and al, 0x68
add dword [eax], eax
add byte [ebx + 0x692484c6], cl
add dword [eax], eax
add byte [0x6a2484c6], dh
add dword [eax], eax
add byte [edi + 0x6b2484c6], bh
add dword [eax], eax
add byte [ebx], dh
mov byte [esp + 0x16c], 0xbc
mov byte [esp + 0x16d], 0x31
mov byte [esp + 0x16e], 0xbe
mov byte [esp + 0x16f], 0x2f
outsd dx, dword [esi]
add dword [eax], eax
add byte [edi], ch
outsd dx, dword [esi]
add dword [eax], eax
add byte [edi], ch
mov byte [esp + 0x170], 0xb5
mov byte [esp + 0x171], 0x2d
mov byte [esp + 0x172], 0xbe
mov byte [esp + 0x173], 0x2b
mov byte [esp + 0x174], 0xa6
mov byte [esp + 0x175], 0x29
mov byte [esp + 0x176], 0x84
test byte [esi + esi*2], ah
add dword [eax], eax
add byte [esi + eax*8 + 0x1772484], al
add byte [eax], al
daa
test byte [esi + esi*2], ah
add dword [eax], eax
add byte [esi + eax*8 + 0x1772484], al
add byte [eax], al
daa
mov byte [esp + 0x178], 0xb1
mov byte [esp + 0x179], 0x25
mov byte [esp + 0x17a], 0xb7
mov byte [esp + 0x17b], 0x23
and eax, esi
test byte [esp + edi*2], ah
add dword [eax], eax
add byte [ecx + 0x7d2484c6], bh
add dword [eax], eax
add byte [ecx], ah
and eax, esi
test byte [esp + edi*2], ah
add dword [eax], eax
add byte [ecx + 0x7d2484c6], bh
add dword [eax], eax
add byte [ecx], ah
mov byte [esp + 0x17e], 0x86
mov byte [esp + 0x17f], 0x1f
mov byte [esp + 0x180], 0x8f
mov byte [esp + 0x181], 0x1d
mov byte [esp + 0x182], 0x8e
mov byte [esp + 0x183], 0x1b
add dword [eax], eax
add byte [ebx], bl
add dword [eax], eax
add byte [ebx], bl
mov byte [esp + 0x184], 0x81
mov byte [esp + 0x185], 0x19
mov byte [esp + 0x186], 0x18
mov byte [esp + 0x187], 0x17
mov byte [esp + 0x18a], 0
mov word [esp + 0x188], 0
mov dword [esp + 0x64], 0
mov ecx, dword [esp + 0x64]
cmp ecx, 0x23
jae 0x42c1d0
jmp 0x42c170
mov ecx, dword [esp + 0x64]
mov edx, dword [esp + 0x64]
movzx edx, byte [esp + edx + 0x168]
mov esi, ecx
add esi, 0x89
and esi, edx
add ecx, edx
add esi, esi
sub ecx, esi
add ecx, 0xa9db1d89
mov dword [esp + 0x53c], ecx
mov ecx, dword [esp + 0x53c]
cmp al, 5
add byte [eax], al
cmp al, 5
add byte [eax], al
mov edx, ecx
xor edx, 0x40
and ecx, 0x40
lea ecx, [edx + ecx*2]
inc cl
mov edx, dword [esp + 0x64]
mov byte [esp + edx + 0x168], cl
mov ecx, dword [esp + 0x64]
inc ecx
mov dword [esp + 0x64], ecx
mov ecx, dword [esp + 0x64]
and al, 0x64
and al, 0x64
cmp ecx, 0x23
jb 0x42c170
jmp 0x42c1d0
mov ecx, dword [eax]
mov ecx, dword [ecx + 0x10]
lea edx, [esp + 0x540]
mov dword [esp + 0xc], edx
lea edx, [esp + 0x168]
mov dword [esp + 4], edx
mov dword [esp], eax
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 8], 0
call ecx
sub esp, 0x18
not eax
shr eax, 0x1f
mov dword [esp + 0x408], eax
mov eax, dword [esp + 0x40c]
mov ecx, dword [esp + 0x408]
mov word [eax + ecx], fs
add al, 0
add byte [ebx + 0x8a1880c], cl
dec eax
inc esp
add byte [0xb83f781e], dh
mov word [eax + ecx], fs
add al, 0
add byte [ebx + 0x8a1880c], cl
dec eax
inc esp
add byte [0xb83f781e], dh
sub ecx, eax
xor eax, eax
jmp ecx
add byte [eax - 0x38ffbbb7], bh
test byte [eax + ebx*8], ah
add byte [eax], al
add byte [eax], al
add byte [eax], al
add bh, al
inc esp
and al, 4
add byte [eax], al
add byte [eax], al
mov dword [esp], 0
mov eax, dword [sym.imp.ole32.dll_CoInitializeEx]
call eax
sub esp, 8
not eax
shr eax, 0x1f
mov dword [esp + 0x44c], eax
mov eax, dword [esp + 0x450]
test byte [eax + edx*2], ah
add al, 0
add byte [ebx + 0x44c248c], cl
add byte [eax], al
test byte [eax + edx*2], ah
add al, 0
add byte [ebx + 0x44c248c], cl
add byte [eax], al
mov eax, dword [eax + ecx*4]
mov ecx, dword [0x4449c0]
xor ecx, 0x9a4335db
sub eax, ecx
mov dword [esp + 0x448], 0x4449c4
mov dword [esp + 0x440], 0x443b80
mov ecx, dword [0x4449d0]
mov dword [esp + 0x1b8], ecx
mov dword [esp + 0x43c], 0x4449d8
mov dword [esp + 0x434], 0x4449e4
mov dword [esp + 0x42c], 0x443b80
mov ecx, dword [0x4449f0]
mov dword [esp + 0x1bc], ecx
mov dword [esp + 0x428], 0x4449f8
mov dword [esp + 0x420], 0x444a04
mov dword [esp + 0x418], 0x443b80
mov ecx, dword [0x444a10]
mov dword [esp + 0x1c0], ecx
mov dword [esp + 0x414], 0x444a18
mov dword [esp + 0x40c], 0x444a24
mov dword [esp + 0x404], 0x443b80
mov ecx, dword [0x444a30]
mov dword [esp + 0x1c4], ecx
mov dword [esp + 0x400], 0x443b80
mov ecx, dword [0x444a38]
mov dword [esp + 0x1c8], ecx
mov dword [esp + 0x3fc], 0x444a40
mov dword [esp + 0x3f4], 0x444a4c
mov dword [esp + 0x3ec], 0x444a58
add byte [eax + 0x4a], bl
inc esp
add bh, al
test byte [esp], ah
add eax, dword [eax]
add byte [edx + ecx*2 + 0x44], ah
add bh, al
test byte [esp + ebx*8], ah
add eax, dword [eax]
add byte [eax + 0x4a], dh
inc esp
add bh, al
test byte [esp + edx*8], ah
add eax, dword [eax]
add byte [edx + ecx*2 + 0x44], bh
add bh, al
test byte [esp + ecx*8], ah
add eax, dword [eax]
add byte [eax - 0x74ffbbc5], al
or eax, 0x444a88
add byte [eax + 0x4a], bl
inc esp
add bh, al
test byte [esp], ah
add eax, dword [eax]
add byte [edx + ecx*2 + 0x44], ah
add bh, al
test byte [esp + ebx*8], ah
add eax, dword [eax]
add byte [eax + 0x4a], dh
inc esp
add bh, al
test byte [esp + edx*8], ah
add eax, dword [eax]
add byte [edx + ecx*2 + 0x44], bh
add bh, al
test byte [esp + ecx*8], ah
add eax, dword [eax]
add byte [eax - 0x74ffbbc5], al
or eax, 0x444a88
mov dword [esp + 0x1d4], ecx
mov dword [esp + case.0x42370d.301], 0x444a90
mov dword [esp + case.0x42370d.302], 0x444a9c
mov dword [esp + case.0x42370d.102], 0x443b80
mov word [esp + edx*8], fs
add dword [eax], eax
add bh, al
test byte [eax + ecx*8], ah
add eax, dword [eax]
add byte [eax - 0x38ffbbb6], dl
test byte [eax + eax*8], ah
add eax, dword [eax]
add byte [edx + ecx*2 - 0x7b38ffbc], bl
and al, 0xb8
add eax, dword [eax]
add byte [eax - 0x74ffbbc5], al
mov ecx, dword [0x444aa8]
mov ecx, dword [0x444aa8]
mov dword [esp + 0x23c], ecx
mov dword [esp + case.0x42370d.304], 0x444ab0
mov dword [esp + case.0x42370d.305], 0x444abc
mov dword [esp + case.0x42370d.307], 0x444ac8
mov dword [esp + case.0x42370d.102], 0x443b80
mov ecx, dword [0x444ad4]
mov dword [esp + 0x238], ecx
mov dword [esp + case.0x42370d.308], 0x444adc
mov dword [esp + case.0x42370d.358], 0x444ae8
add byte [eax], al
call 0xc7430b50
test byte [eax + ecx*4], ah
add eax, dword [eax]
add byte [eax - 0x74ffbbc5], al
or eax, 0x444af4
add byte [eax], al
call 0xc7430b50
test byte [eax + ecx*4], ah
add eax, dword [eax]
add byte [eax - 0x74ffbbc5], al
or eax, 0x444af4
mov dword [esp + 0x234], ecx
mov dword [esp + case.0x42370d.102], 0x443b80
mov ecx, dword [0x444afc]
mov dword [esp + 0x230], ecx
mov dword [esp + case.0x42370d.359], 0x444b04
mov dword [esp + case.0x42370d.312], 0x444b10
mov dword [esp + case.0x42370d.102], 0x443b80
mov ecx, dword [0x444b1c]
mov dword [esp + 0x22c], ecx
mov dword [esp + case.0x42370d.360], 0x444b24
mov dword [esp + case.0x42370d.316], 0x444b30
mov dword [esp + case.0x42370d.102], 0x443b80
mov ecx, dword [0x444b3c]
mov dword [esp + 0x228], ecx
mov dword [esp + case.0x42370d.102], 0x443b80
mov ecx, dword [0x444b44]
mov dword [esp + 0x224], ecx
mov dword [esp + case.0x42370d.336], 0x444b4c
mov dword [esp + case.0x42370d.323], 0x444b58
mov dword [esp + case.0x42370d.361], 0x444b64
mov dword [esp + case.0x42370d.321], 0x444b70
mov dword [esp + case.0x42370d.102], 0x443b80
mov ecx, dword [0x444b7c]
mov dword [esp + 0x220], ecx
mov dword [esp + case.0x42370d.362], 0x444b84
mov dword [esp + case.0x42370d.325], 0x444b90
mov dword [esp + case.0x42370d.327], 0x444b9c
mov dword [esp + case.0x42370d.102], 0x443b80
mov ecx, dword [0x444ba8]
mov dword [esp + 0x218], ecx
mov dword [esp + case.0x42370d.329], 0x444bb0
mov dword [esp + case.0x42370d.102], 0x443b80
mov ecx, dword [0x444bbc]
mov dword [esp + 0x214], ecx
mov dword [esp + case.0x42370d.331], 0x444bc4
mov dword [esp + case.0x42370d.102], 0x443b80
mov ecx, dword [0x444bd0]
mov dword [esp + 0x210], ecx
mov dword [esp + case.0x42370d.363], 0x444bd8
mov dword [esp + case.0x42370d.333], 0x444be4
mov dword [esp + case.0x42370d.335], 0x444bf0
mov dword [esp + case.0x42370d.102], 0x443b80
mov ecx, dword [0x444bfc]
mov dword [esp + 0x20c], ecx
mov dword [esp + case.0x42370d.102], 0x443b80
mov ecx, dword [0x444c04]
mov dword [esp + 0x208], ecx
mov dword [esp + case.0x42370d.102], 0x443b80
mov ecx, dword [0x444c0c]
mov dword [esp + 0x1fc], ecx
mov dword [esp + case.0x42370d.338], 0x444c14
mov dword [esp + case.0x42370d.339], 0x444c20
mov dword [esp + case.0x42370d.339], 0x444c2c
mov dword [esp + case.0x42370d.102], 0x443b80
mov ecx, dword [0x444c38]
mov dword [esp + 0x1f8], ecx
mov dword [esp + case.0x42370d.102], 0x443b80
mov ecx, dword [0x444c40]
mov dword [esp + 0x204], ecx
mov dword [esp + case.0x42370d.102], 0x443b80
mov ecx, dword [0x444c48]
mov dword [esp + 0x21c], ecx
mov dword [esp + case.0x42370d.365], 0x444c50
mov dword [esp + case.0x42370d.344], 0x444c5c
mov dword [esp + case.0x42370d.102], 0x443b80
mov ecx, dword [0x444c68]
mov dword [esp + 0x240], ecx
mov dword [esp + case.0x42370d.102], 0x443b80
mov ecx, dword [0x444c70]
mov dword [esp + 0x244], ecx
mov dword [esp + case.0x42370d.102], 0x443b80
mov ecx, dword [0x444c78]
mov dword [esp + 0x248], ecx
mov dword [esp + case.0x42370d.102], 0x443b80
mov ecx, dword [0x444c80]
mov dword [esp + 0x24c], ecx
mov dword [esp + case.0x42370d.102], 0x443b80
mov edx, dword [0x444c88]
mov dword [esp + case.0x42370d.102], 0x443b80
mov ecx, dword [0x444c90]
mov dword [esp + case.0x42370d.102], 0x443b80
mov esi, dword [0x444c98]
mov dword [esp + case.0x42370d.102], 0x443b80
mov edi, dword [0x444ca0]
dec esp
inc esp
add bh, al
test byte [esp + eax*4], ah
add al, byte [eax]
add byte [eax - 0x74ffbbc5], al
sbb eax, 0x444ca8
dec esp
inc esp
add bh, al
test byte [esp + eax*4], ah
add al, byte [eax]
add byte [eax - 0x74ffbbc5], al
sbb eax, 0x444ca8
mov dword [esp + 0x1b4], ebx
mov dword [esp + case.0x42370d.102], 0x443b80
mov ebx, dword [0x444cb0]
mov dword [esp + 0x1cc], ebx
mov dword [esp + case.0x42370d.102], 0x443b80
mov ebx, dword [0x444cb8]
mov dword [esp + 0x1d0], ebx
mov dword [esp + case.0x42370d.102], 0x443b80
mov ebx, dword [0x444cc0]
mov dword [esp + 0x1f4], ebx
mov dword [esp + case.0x42370d.102], 0x443b80
mov ebx, dword [0x444cc8]
mov dword [esp + 0x1f0], ebx
mov dword [esp + case.0x42370d.102], 0x443b80
mov ebx, dword [0x444cd0]
mov dword [esp + 0x1ec], ebx
mov dword [esp + case.0x42370d.102], 0x443b80
mov ebx, dword [0x444cd8]
mov dword [esp + 0x1e8], ebx
mov dword [esp + case.0x42370d.102], 0x443b80
mov ebx, dword [0x444ce0]
mov dword [esp + 0x1e4], ebx
mov dword [esp + case.0x42370d.102], 0x443b80
mov ebx, dword [0x444ce8]
mov dword [esp + 0x1e0], ebx
mov dword [esp + case.0x42370d.102], 0x443b80
mov ebx, dword [0x444cf0]
mov dword [esp + 0x1dc], ebx
mov dword [esp + case.0x42370d.102], 0x443b80
mov ebx, dword [0x444cf8]
mov dword [esp + 0x1d8], ebx
mov dword [esp + case.0x42370d.102], 0x443b80
mov ebx, dword [0x444d00]
mov dword [esp + 0x200], ebx
jmp eax
add byte [ebx + 0x3082484], cl
add byte [eax], al
mov ecx, dword [esp + 0x304]
mov eax, dword [eax + ecx*4]
mov ecx, dword [0x444bcc]
xor ecx, 0xefcc6c11
sub eax, ecx
jmp eax
add byte [eax], al
add byte [eax], al
add byte [eax], al
mov eax, dword [esp + 0xcc]
mov ecx, dword [eax]
mov ecx, dword [ecx + 0x10]
lea edx, [esp + 0x190]
mov dword [esp + 0x10], edx
lea edx, [esp + 0xc8]
mov dword [esp + 0xc], edx
mov dword [esp], eax
mov dword [esp + 8], 1
or byte [ecx], al
add byte [eax], al
add bh, al
inc esp
and al, 4
invalid
invalid
invalid
invalid
call ecx
sub esp, 0x14
mov dword [esp + 0x18c], eax
mov eax, dword [esp + 0x18c]
shr eax, 0x1f
mov dword [esp + 0x3b0], eax
mov eax, dword [esp + 0x3b4]
mov ecx, dword [esp + 0x3b0]
or byte [ecx], al
add byte [eax], al
add bh, al
inc esp
and al, 4
mov eax, dword [eax + ecx*4]
mov ecx, dword [0x444ab8]
xor ecx, 0xfa4e3153
sub eax, ecx
jmp eax
inc esp
add byte [ecx - 0x34f3440f], al
pop ecx
sub eax, ecx
jmp eax
add byte [eax], al
mov dword [esp], eax
mov eax, dword [sym.imp.OLEAUT32.dll_SysStringLen]
call eax
sub esp, 4
mov eax, dword [esp + 0xd4]
mov ecx, dword [eax]
mov ecx, dword [ecx + 8]
mov dword [esp], eax
call ecx
sub esp, 4
mov ecx, dword [esp + 0x24c]
xor ecx, 0x3e52c79a
mov eax, dword ds:[esp + 0x298]
mov eax, dword ds:[esp + 0x298]
mov eax, dword [eax + ecx*4]
mov ecx, dword [0x444c84]
xor ecx, 0x4ba68220
sub eax, ecx
mov esi, dword [esp + 0x17c]
jmp eax
shl dword [ebx + 0x1a], 0x1a
mov ecx, dword [esp + 0x26c]
mov eax, dword [ecx + eax*4]
mov ecx, dword [0x444cdc]
xor ecx, 0xf9c3e6b1
sub eax, ecx
jmp eax
enter 0x103a, 0xffffffffffffff8b
test byte [eax + eax*2], ah
add al, 0
add byte [ebx + 0xd8b8804], cl
aam 0x49
inc esp
add byte [ecx + 0x5cc4d3f1], al
adc al, 0x29
enter 0xffffffffffffe0ff, 0xffffffffffffffc7
test byte [eax + ebx*4], ah
add byte [eax], al
add byte [ebx], al
add byte [eax], al
add byte [ebx + 0x2382484], cl
add byte [eax], al
xor eax, 0x467367c
mov ecx, dword [esp + 0x39c]
mov eax, dword [ecx + eax*4]
mov ecx, dword [0x444ad8]
xor ecx, 0x68f4f415
sub eax, ecx
jmp eax
enter 0xffffffffffffe0ff, 0x60
xchg byte [ebx], cl
pop eax
jge 0x42cefb
pop es
aas
mov bh, 0x52
dec esp
std
mov eax, dword [esp + 0x1e4]
xor eax, 0x3bb0a7e2
mov ecx, dword [esp + 0x268]
mov eax, dword [ecx + eax*4]
mov ecx, dword [0x444ce4]
xor ecx, 0xf6e1330e
int1
push cs
xor esp, ecx
imul byte [ecx]
invalid
jmp eax
int1
push cs
xor esp, ecx
imul byte [ecx]
enter 0xffffffffffffe0ff, 0xffffffffffffffe8
jp 0x42cf6c
std
dec dword [ebx + 0x982484]
add byte [eax], al
mov dword [esp + 0x360], 0
mov ecx, dword [esp + 0x364]
mov edx, dword [esp + 0x360]
add byte [ebx + 0x158b910c], cl
cmp byte [ebx + 0x44], cl
add byte [ecx - 0x1fdb280e], al
aaa
add byte [ebx + 0x158b910c], cl
cmp byte [ebx + 0x44], cl
add byte [ecx - 0x1fdb280e], al
aaa
sub ecx, edx
jmp ecx
xor ecx, 0x46b718fb
sub eax, ecx
jmp eax
xchg esi, eax
rep movsw word es:[edi], word [esi]
xchg esi, eax
mov al, byte [esp + 0x189]
mov ecx, dword [esp + 0x9c]
mov byte [ecx + 4], al
mov eax, dword [esp + 0x218]
xor eax, 0x35372d58
mov ecx, dword [esp + 0x318]
mov eax, dword [ecx + eax*4]
mov ecx, dword [0x444bac]
add byte [ecx - 0x3b647c0f], al
invalid
sub eax, ecx
jmp eax
add byte [ecx - 0x3b647c0f], al
imul ebp, dword [ecx], 0x8be0ffc8
mov word [eax + eax*2], fs
add al, byte [eax]
add byte [ecx + 0x723ceaf1], al
cmp eax, 0xa424848b
add al, byte [eax]
add byte [ebx + 0xd8b8804], cl
insb byte es:[edi], dx
dec esp
inc esp
add byte [ecx - 0x532a820f], al
sub eax, ecx
jmp eax
xor al, 0x4c
inc esp
add byte [ecx - 0x69dc470f], al
cwde
sub eax, ecx
jmp eax
add byte [ecx - 0x199afa0f], al
sub byte [ecx], ch
enter 0xffffffffffffe0ff, 0xffffffffffffffe8
sub bh, al
std
inc edi
test byte [esp + edi*4], ah
add eax, dword [eax]
add byte [eax], al
add byte [eax], al
add byte [ebx + 0x3c02484], cl
add byte [eax], al
mov ecx, dword [esp + 0x3bc]
mov eax, dword [eax + ecx*4]
mov ecx, dword [0x444aa4]
xor ecx, 0xc200eb5d
sub eax, ecx
jmp eax
dec edx
inc esp
add byte [ecx - 0x66ffe40f], al
in eax, dx
sub eax, ecx
jmp eax
or eax, 0x444b2c
xor ecx, 0x903385a3
sub eax, ecx
jmp eax
and ecx, dword [ebx + 0x2bc2494]
add byte [eax], al
mov edx, dword [edx + esi*4]
mov esi, dword [0x444c44]
xor esi, 0xc8ea2ea5
sub edx, esi
jmp edx
shr dword [ecx], 1
enter 0xffffffffffffe0ff, 0xfffffffffffffffa
loopne 0x42d1f4
loopne 0x42d1f4
mov ah, 0x42
adc eax, dword [edx - 6]
int3
jmp eax
mov eax, dword [esp + 0x138]
mov ecx, dword [esp + 0x13c]
mov eax, dword [ecx + eax*4]
jmp eax
xor ecx, ecx
sub eax, 0x65aef166
sete cl
mov dword [esp + 0x258], ecx
mov eax, dword [esp + 0x25c]
mov ecx, dword [esp + 0x258]
mov eax, dword [eax + ecx*4]
jmp eax
mov eax, dword [esp + 0x24]
mov dword [eax], 0x75460717
mov eax, dword [esp + 0xe8]
mov ecx, dword [esp + 0xec]
mov eax, dword [ecx + eax*4]
jmp eax
xor ecx, ecx
sub eax, 0xed23d01c
sete cl
mov dword [esp + 0x1e8], ecx
mov eax, dword [esp + 0x1ec]
mov ecx, dword [esp + 0x1e8]
mov eax, dword [eax + ecx*4]
jmp eax
xor ecx, ecx
sub eax, 0x1d1b490
sete cl
mov dword [esp + 0x200], ecx
mov eax, dword [esp + 0x204]
mov ecx, dword [esp + 0x200]
mov eax, dword [eax + ecx*4]
jmp eax
xor ecx, ecx
mov edx, eax
sub edx, 0xed23d01c
setl cl
mov dword [esp + 0x290], ecx
mov ecx, dword [esp + 0x294]
mov edx, dword [esp + 0x290]
mov ecx, dword [ecx + edx*4]
jmp ecx
xor ecx, ecx
mov edx, eax
sub edx, 0x8a2e1f60
setl cl
mov dword [esp + 0x150], ecx
mov ecx, dword [esp + 0x154]
mov edx, dword [esp + 0x150]
mov ecx, dword [ecx + edx*4]
jmp ecx
xor ecx, ecx
sub eax, 0x2af79f84
sete cl
mov dword [esp + 0x238], ecx
mov eax, dword [esp + 0x23c]
mov ecx, dword [esp + 0x238]
mov eax, dword [eax + ecx*4]
jmp eax
mov eax, dword [esp + 0x24]
mov dword [eax], 0xeb9b9069
mov eax, dword [esp + 0x98]
mov ecx, dword [esp + 0x9c]
mov eax, dword [ecx + eax*4]
jmp eax
mov eax, dword [esp + 0x24]
mov dword [eax], 0x13df8dd5
mov eax, dword [esp + 0x108]
mov ecx, dword [esp + 0x10c]
mov eax, dword [ecx + eax*4]
jmp eax
xor ecx, ecx
mov edx, eax
sub edx, 0xc6c4ec74
setl cl
mov dword [esp + 0x1a8], ecx
mov ecx, dword [esp + 0x1ac]
mov edx, dword [esp + 0x1a8]
mov ecx, dword [ecx + edx*4]
jmp ecx
and al, 0x74
jl 0x42f47e
sti
mov eax, dword [0x10e30c08]
inc eax
mov eax, 0x5824448b
mov dword [esp], eax
mov eax, dword [sym.imp.GDI32.dll_DeleteObject]
call eax
sub esp, 4
mov eax, dword [esp + 0x24]
mov dword [eax], 0x1d1b490
mov eax, dword [esp + 0xa0]
mov ecx, dword [esp + 0xa4]
mov eax, dword [ecx + eax*4]
jmp eax
xor ecx, ecx
sub eax, 0xf14f767e
sete cl
mov dword [esp + 0x1f0], ecx
mov eax, dword [esp + 0x1f4]
mov ecx, dword [esp + 0x1f0]
mov eax, dword [eax + ecx*4]
jmp eax
mov eax, dword [esp + 0x24]
mov dword [eax], 0x40423155
mov eax, dword [esp + 0xc0]
mov ecx, dword [esp + 0xc4]
mov eax, dword [ecx + eax*4]
jmp eax
xor ecx, ecx
mov edx, eax
sub edx, 0xe867b6e8
setl cl
mov dword [esp + 0x1d0], ecx
mov ecx, dword [esp + 0x1d4]
mov edx, dword [esp + 0x1d0]
mov ecx, dword [ecx + edx*4]
jmp ecx
xor ecx, ecx
mov edx, eax
sub edx, 0x2764ed81
setl cl
mov dword [esp + 0x288], ecx
mov ecx, dword [esp + 0x28c]
mov edx, dword [esp + 0x288]
mov ecx, dword [ecx + edx*4]
jmp ecx
mov eax, dword [esp + 0x70]
mov dword [esp], eax
call fcn.00409140
mov eax, dword [esp + 0x24]
mov dword [eax], 0x2af79f84
mov eax, dword [esp + 0x110]
mov ecx, dword [esp + 0x114]
mov eax, dword [ecx + eax*4]
jmp eax
call fcn.00409820
mov ecx, dword [ebp + 8]
mov eax, dword [esp + 0x74]
mov edx, dword [esp + 0x60]
mov bl, byte [esp + 0x2c]
mov byte [esp + 0x64], bl
mov byte [esp + 0x40], 0x5b
mov byte [esp + 0x41], 0x68
mov byte [esp + 0x42], 0x7a
mov byte [esp + 0x43], 0x68
mov byte [esp + 0x44], 0x69
mov byte [esp + 0x45], 0x73
mov byte [esp + 0x46], 0x32
mov byte [esp + 0x47], 0x7f
mov byte [esp + 0x48], 0x7c
mov byte [esp + 0x49], 0x64
mov byte [esp + 0x4a], 0xc
mov word [esp + 0x53], 0
mov dword [esp + 0x4f], 0
mov dword [esp + 0x4b], 0
mov dword [esp + 0x30], 0
mov esi, dword [esp + 0x30]
cmp esi, 0x15
jae 0x42f5ef
jmp 0x42f597
mov esi, dword [esp + 0x30]
mov edi, dword [esp + 0x30]
movzx edi, byte [esp + edi + 0x40]
mov ebx, esi
add ebx, 0x968d2981
lea esi, [esi + edi - 0x6972d67f]
and ebx, edi
add ebx, ebx
sub esi, ebx
mov dword [esp + 0x2b4], esi
mov esi, dword [esp + 0x2b4]
mov ebx, esi
or ebx, 0x78
and esi, 0x78
add ebx, esi
inc bl
mov esi, dword [esp + 0x30]
mov byte [esp + esi + 0x40], bl
mov esi, dword [esp + 0x30]
inc esi
mov dword [esp + 0x30], esi
mov esi, dword [esp + 0x30]
cmp esi, 0x15
jb 0x42f597
jmp 0x42f5ef
mov dword [esp + 8], eax
mov dword [esp + 4], edx
lea eax, [esp + 0x40]
mov dword [esp], eax
call fcn.00409a30
sub esp, 0xc
mov byte [esp + 0x2b], al
mov eax, dword [esp + 0x60]
mov dword [esp + 0x70], eax
mov eax, dword [esp + 0x70]
test eax, eax
sete byte [esp + 0x3b]
mov eax, dword [esp + 0x24]
mov dword [eax], 0xbb6987d6
mov eax, dword [esp + 0x120]
mov ecx, dword [esp + 0x124]
mov eax, dword [ecx + eax*4]
jmp eax
call fcn.00409820
mov eax, dword [esp + 0x24]
mov dword [eax], 0xeb9b9069
mov eax, dword [esp + 0xe0]
mov ecx, dword [esp + 0xe4]
mov eax, dword [ecx + eax*4]
jmp eax
mov eax, dword [esp + 0x24]
mov dword [eax], 0x9c0abfe9
mov eax, dword [esp + 0xc8]
mov ecx, dword [esp + 0xcc]
mov eax, dword [ecx + eax*4]
jmp eax
dec edi
sub dword [ecx], esp
sbb al, 0x45
bound edx, qword [eax - 0x39]
mov ecx, dword [ebp + 8]
mov eax, dword [esp + 0x74]
mov edx, dword [esp + 0x60]
mov bl, byte [esp + 0x2c]
mov byte [esp + 0x68], bl
mov byte [esp + 0x40], 0x5b
mov byte [esp + 0x41], 0x68
mov byte [esp + 0x42], 0x7a
mov byte [esp + 0x43], 0x68
mov byte [esp + 0x44], 0x69
mov byte [esp + 0x45], 0x73
mov byte [esp + 0x46], 0x32
mov byte [esp + 0x47], 0x7f
mov byte [esp + 0x48], 0x7c
mov byte [esp + 0x49], 0x64
mov byte [esp + 0x4a], 0xc
mov word [esp + 0x53], 0
mov dword [esp + 0x4f], 0
mov dword [esp + 0x4b], 0
mov dword [esp + 0x34], 0
mov esi, dword [esp + 0x34]
cmp esi, 0x15
jae 0x42f74d
jmp 0x42f6f5
mov esi, dword [esp + 0x34]
mov edi, dword [esp + 0x34]
movzx edi, byte [esp + edi + 0x40]
mov ebx, esi
add ebx, 0x968d2981
lea esi, [esi + edi - 0x6972d67f]
and ebx, edi
add ebx, ebx
sub esi, ebx
mov dword [esp + 0x2b8], esi
mov esi, dword [esp + 0x2b8]
mov ebx, esi
or ebx, 0x78
and esi, 0x78
add ebx, esi
inc bl
mov esi, dword [esp + 0x34]
mov byte [esp + esi + 0x40], bl
mov esi, dword [esp + 0x34]
inc esi
mov dword [esp + 0x34], esi
mov esi, dword [esp + 0x34]
cmp esi, 0x15
jb 0x42f6f5
jmp 0x42f74d
mov dword [esp + 8], eax
mov dword [esp + 4], edx
lea eax, [esp + 0x40]
mov dword [esp], eax
call fcn.00409a30
sub esp, 0xc
mov byte [esp + 0x2b], al
mov eax, dword [esp + 0x24]
mov dword [eax], 0x65b2a57c
mov eax, dword [esp + 0xa8]
mov ecx, dword [esp + 0xac]
mov eax, dword [ecx + eax*4]
jmp eax
xor ecx, ecx
sub eax, 0x206a71da
sete cl
mov dword [esp + 0x210], ecx
mov eax, dword [esp + 0x214]
mov ecx, dword [esp + 0x210]
mov eax, dword [eax + ecx*4]
jmp eax
xor ecx, ecx
sub eax, 0x8349b268
sete cl
mov dword [esp + 0x140], ecx
mov eax, dword [esp + 0x144]
mov ecx, dword [esp + 0x140]
mov eax, dword [eax + ecx*4]
jmp eax
mov eax, dword [esp + 0x6c]
mov ecx, dword [esp + 0x298]
mov edx, dword [esp + 0x29c]
mov ecx, dword [edx + ecx*4]
jmp ecx
xor ecx, ecx
sub eax, 0xbb6987d6
sete cl
mov dword [esp + 0x188], ecx
mov eax, dword [esp + 0x18c]
mov ecx, dword [esp + 0x188]
mov eax, dword [eax + ecx*4]
jmp eax
xor ecx, ecx
mov edx, eax
sub edx, 0x9c0abfe9
setl cl
mov dword [esp + 0x180], ecx
mov ecx, dword [esp + 0x184]
mov edx, dword [esp + 0x180]
mov ecx, dword [ecx + edx*4]
jmp ecx
xor ecx, ecx
sub eax, 0x9c0abfe9
sete cl
mov dword [esp + 0x158], ecx
mov eax, dword [esp + 0x15c]
mov ecx, dword [esp + 0x158]
mov eax, dword [eax + ecx*4]
jmp eax
xor ecx, ecx
mov edx, eax
sub edx, 0x1d1b490
setl cl
mov dword [esp + 0x228], ecx
mov ecx, dword [esp + 0x22c]
mov edx, dword [esp + 0x228]
mov ecx, dword [ecx + edx*4]
jmp ecx
mov al, byte [esp + 0x3a]
and al, 1
movzx eax, al
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
xor ecx, ecx
mov edx, eax
sub edx, 0x75460717
setl cl
mov dword [esp + 0x270], ecx
mov ecx, dword [esp + 0x274]
mov edx, dword [esp + 0x270]
mov ecx, dword [ecx + edx*4]
jmp ecx
mov eax, dword [esp + 0x88]
mov ecx, dword [esp + 0x8c]
mov eax, dword [ecx + eax*4]
jmp eax
mov eax, dword [esp + 0x2a0]
lea ecx, [esp + 0x74]
mov dword [esp + 8], ecx
lea ecx, [esp + 0x60]
mov dword [esp + 4], ecx
mov dword [esp], eax
call fcn.0042fe60
test al, al
mov eax, 0x8a2e1f60
jne 0x42f8f2
mov eax, 0x8349b268
mov ecx, dword [esp + 0x24]
mov dword [ecx], eax
mov eax, dword [esp + 0x130]
mov ecx, dword [esp + 0x134]
mov eax, dword [ecx + eax*4]
jmp eax
xor ecx, ecx
sub eax, 0xd50df36c
sete cl
mov dword [esp + 0x1b0], ecx
mov eax, dword [esp + 0x1b4]
mov ecx, dword [esp + 0x1b0]
mov eax, dword [eax + ecx*4]
jmp eax
call fcn.00409820
mov eax, dword [esp + 0x24]
mov dword [eax], 0x65b2a57c
mov eax, dword [esp + 0x128]
mov ecx, dword [esp + 0x12c]
mov eax, dword [ecx + eax*4]
jmp eax
xor ecx, ecx
sub eax, 0x40423155
sete cl
mov dword [esp + 0x240], ecx
mov eax, dword [esp + 0x244]
mov ecx, dword [esp + 0x240]
mov eax, dword [eax + ecx*4]
jmp eax
xor ecx, ecx
mov edx, eax
sub edx, 0x65aef166
setl cl
mov dword [esp + 0x280], ecx
mov ecx, dword [esp + 0x284]
mov edx, dword [esp + 0x280]
mov ecx, dword [ecx + edx*4]
jmp ecx
xor ecx, ecx
sub eax, 0x75460717
sete cl
mov dword [esp + 0x268], ecx
mov eax, dword [esp + 0x26c]
mov ecx, dword [esp + 0x268]
mov eax, dword [eax + ecx*4]
jmp eax
call fcn.00409820
mov eax, dword [esp + 0x24]
mov dword [eax], 0xf14f767e
mov eax, dword [esp + 0xb8]
mov ecx, dword [esp + 0xbc]
mov eax, dword [ecx + eax*4]
jmp eax
xor ecx, ecx
sub eax, 0xe867b6e8
sete cl
mov dword [esp + 0x1b8], ecx
mov eax, dword [esp + 0x1bc]
mov ecx, dword [esp + 0x1b8]
mov eax, dword [eax + ecx*4]
jmp eax
xor ecx, ecx
sub eax, 0x65b2a57c
sete cl
mov dword [esp + 0x260], ecx
mov eax, dword [esp + 0x264]
mov ecx, dword [esp + 0x260]
mov eax, dword [eax + ecx*4]
jmp eax
xor ecx, ecx
sub eax, 0x8a2e1f60
sete cl
mov dword [esp + 0x148], ecx
mov eax, dword [esp + 0x14c]
mov ecx, dword [esp + 0x148]
mov eax, dword [eax + ecx*4]
jmp eax
xchg ebx, eax
into
xlatb
mov al, byte [0xc9cb8b1e]
or bh, 0x38
invalid
xor ecx, ecx
sub eax, 0x13df8dd5
sete cl
mov dword [esp + 0x208], ecx
mov eax, dword [esp + 0x20c]
mov ecx, dword [esp + 0x208]
mov eax, dword [eax + ecx*4]
jmp eax
xor ecx, ecx
mov edx, eax
sub edx, 0xd173e9ae
setl cl
mov dword [esp + 0x1a0], ecx
mov ecx, dword [esp + 0x1a4]
mov edx, dword [esp + 0x1a0]
mov ecx, dword [ecx + edx*4]
jmp ecx
xor ecx, ecx
sub eax, 0xa80de71a
sete cl
mov dword [esp + 0x160], ecx
mov eax, dword [esp + 0x164]
mov ecx, dword [esp + 0x160]
mov eax, dword [eax + ecx*4]
jmp eax
mov al, byte [esp + 0x3b]
test al, al
mov eax, 0x13df8dd5
jne 0x42fafc
mov eax, 0xe867b6e8
mov ecx, dword [esp + 0x24]
mov dword [ecx], eax
mov eax, dword [esp + 0x118]
mov ecx, dword [esp + 0x11c]
mov eax, dword [ecx + eax*4]
jmp eax
xor ecx, ecx
mov edx, eax
sub edx, 0x2af79f84
setl cl
mov dword [esp + 0x250], ecx
mov ecx, dword [esp + 0x254]
mov edx, dword [esp + 0x250]
mov ecx, dword [ecx + edx*4]
jmp ecx
call fcn.00409820
mov eax, dword [esp + 0x58]
mov dword [esp], eax
mov eax, dword [sym.imp.GDI32.dll_DeleteObject]
call eax
sub esp, 4
mov al, byte [esp + 0x2b]
mov byte [esp + 0x3a], al
mov eax, dword [esp + 0x24]
mov dword [eax], 0x206a71da
mov eax, dword [esp + 0xf0]
mov ecx, dword [esp + 0xf4]
mov eax, dword [ecx + eax*4]
jmp eax
xor ecx, ecx
mov edx, eax
sub edx, 0xd50df36c
setl cl
mov dword [esp + 0x1d8], ecx
mov ecx, dword [esp + 0x1dc]
mov edx, dword [esp + 0x1d8]
mov ecx, dword [ecx + edx*4]
jmp ecx
call fcn.00409820
mov eax, dword [esp + 0x24]
mov dword [eax], 0xed23d01c
mov eax, dword [esp + 0xb0]
mov ecx, dword [esp + 0xb4]
mov eax, dword [ecx + eax*4]
jmp eax
call fcn.00409820
mov eax, dword [esp + 0x24]
mov dword [eax], 0x2764ed81
mov eax, dword [esp + 0xd8]
mov ecx, dword [esp + 0xdc]
mov eax, dword [ecx + eax*4]
jmp eax
xor ecx, ecx
mov edx, eax
sub edx, 0x206a71da
setl cl
mov dword [esp + 0x218], ecx
mov ecx, dword [esp + 0x21c]
mov edx, dword [esp + 0x218]
mov ecx, dword [ecx + edx*4]
jmp ecx
xor ecx, ecx
mov edx, eax
sub edx, 0xb593cadb
setl cl
mov dword [esp + 0x170], ecx
mov ecx, dword [esp + 0x174]
mov edx, dword [esp + 0x170]
mov ecx, dword [ecx + edx*4]
jmp ecx
xor ecx, ecx
mov edx, eax
sub edx, 0xeb9b9069
setl cl
mov dword [esp + 0x1c8], ecx
mov ecx, dword [esp + 0x1cc]
mov edx, dword [esp + 0x1c8]
mov ecx, dword [ecx + edx*4]
jmp ecx
mov eax, dword [esp + 0x24]
mov dword [eax], 0xc6c4ec74
mov eax, dword [esp + 0xd0]
mov ecx, dword [esp + 0xd4]
mov eax, dword [ecx + eax*4]
jmp eax
xor ecx, ecx
mov edx, eax
sub edx, 0xa80de71a
setl cl
mov dword [esp + 0x178], ecx
mov ecx, dword [esp + 0x17c]
mov edx, dword [esp + 0x178]
mov ecx, dword [ecx + edx*4]
jmp ecx
xor ecx, ecx
mov edx, eax
sub edx, 0xbb6987d6
setl cl
mov dword [esp + 0x1e0], ecx
mov ecx, dword [esp + 0x1e4]
mov edx, dword [esp + 0x1e0]
mov ecx, dword [ecx + edx*4]
jmp ecx
xor ecx, ecx
mov edx, eax
sub edx, 0x65b2a57c
setl cl
mov dword [esp + 0x278], ecx
mov ecx, dword [esp + 0x27c]
mov edx, dword [esp + 0x278]
mov ecx, dword [ecx + edx*4]
jmp ecx
xor ecx, ecx
sub eax, 0xd173e9ae
sete cl
mov dword [esp + 0x198], ecx
mov eax, dword [esp + 0x19c]
mov ecx, dword [esp + 0x198]
mov eax, dword [eax + ecx*4]
jmp eax
call fcn.00409820
mov eax, dword [esp + 0x24]
mov dword [eax], 0x1d1b490
mov eax, dword [esp + 0xf8]
mov ecx, dword [esp + 0xfc]
mov eax, dword [ecx + eax*4]
jmp eax
xor ecx, ecx
mov edx, eax
sub edx, 0xf14f767e
setl cl
mov dword [esp + 0x1f8], ecx
mov ecx, dword [esp + 0x1fc]
mov edx, dword [esp + 0x1f8]
mov ecx, dword [ecx + edx*4]
jmp ecx
xor ecx, ecx
sub eax, 0xb593cadb
sete cl
mov dword [esp + 0x168], ecx
mov eax, dword [esp + 0x16c]
mov ecx, dword [esp + 0x168]
mov eax, dword [eax + ecx*4]
jmp eax
mov eax, dword [esp + 0x24]
mov dword [eax], 0x8349b268
mov eax, dword [esp + 0x100]
mov ecx, dword [esp + 0x104]
mov eax, dword [ecx + eax*4]
jmp eax
xor ecx, ecx
mov edx, eax
sub edx, 0x13df8dd5
setl cl
mov dword [esp + 0x220], ecx
mov ecx, dword [esp + 0x224]
mov edx, dword [esp + 0x220]
mov ecx, dword [ecx + edx*4]
jmp ecx
xor ecx, ecx
mov edx, eax
sub edx, 0x40423155
setl cl
mov dword [esp + 0x248], ecx
mov ecx, dword [esp + 0x24c]
mov edx, dword [esp + 0x248]
mov ecx, dword [ecx + edx*4]
jmp ecx
xor ecx, ecx
sub eax, 0x2764ed81
sete cl
mov dword [esp + 0x230], ecx
mov eax, dword [esp + 0x234]
mov ecx, dword [esp + 0x230]
mov eax, dword [eax + ecx*4]
jmp eax
xor ecx, ecx
sub eax, 0xc6c4ec74
sete cl
mov dword [esp + 0x190], ecx
mov eax, dword [esp + 0x194]
mov ecx, dword [esp + 0x190]
mov eax, dword [eax + ecx*4]
jmp eax
xor ecx, ecx
sub eax, 0xeb9b9069
wait
jmp 0x42fe44
xchg esp, eax
ror dword [ecx + 0x1c0248c], 0
add byte [ebx + 0x1c42484], cl
add byte [eax], al
mov ecx, dword [esp + 0x1c0]
wait
jmp 0x42fe44
add byte [ebx + 0x1c0248c], cl
add byte [eax], al
mov eax, dword [eax + ecx*4]
jmp eax
sub esp, 0x4ec
mov eax, dword [esp + 0x504]
mov eax, dword [esp + 0x500]
mov eax, dword [esp + 0x4fc]
mov dword [esp + 0x4c0], 0x443b80
mov dword [esp + 0x4bc], 0x14c
mov eax, dword [esp + 0x4fc]
lea ecx, [esp + 0x58]
mov dword [esp + 8], ecx
mov dword [esp], eax
mov dword [esp + 4], 0x18
mov eax, dword [sym.imp.GDI32.dll_GetObjectW]
call eax
sub esp, 0xc
mov dword [esp + 0x4c4], 0x28
mov eax, dword [esp + 0x5c]
mov dword [esp + 0x4c8], eax
mov eax, dword [esp + 0x60]
neg eax
mov dword [esp + 0x4cc], eax
mov word [esp + 0x4d0], 1
mov ax, word [esp + 0x6a]
mov word [esp + 0x4d2], ax
add al, 0
add bh, al
test byte [esp + edx*8], ah
add al, 0
add byte [eax], al
add byte [eax], al
add bh, al
test byte [eax + ebx*8], ah
add al, 0
add byte [eax], al
add byte [eax], al
add bh, al
test byte [esp + ebx*8], ah
add al, 0
add byte [eax], al
add byte [eax], al
add bh, al
test byte [eax], ah
add al, 0
add byte [eax], al
add byte [eax], al
add bh, al
test byte [esp], ah
add al, 0
add byte [eax], al
add byte [eax], al
add bh, al
test byte [eax + ebp*8], ah
add al, 0
add byte [eax], al
add byte [eax], al
add byte [edi], cl
mov bh, 0x84
and al, 0xd2
add al, 0
add cl, al
call 0x44cc6545
and al, 0x22
add al, 0
add bh, al
test byte [esp + edx*8], ah
add al, 0
add byte [eax], al
add byte [eax], al
add bh, al
test byte [eax + ebx*8], ah
add al, 0
add byte [eax], al
add byte [eax], al
add bh, al
test byte [esp + ebx*8], ah
add al, 0
add byte [eax], al
add byte [eax], al
add bh, al
test byte [eax], ah
add al, 0
add byte [eax], al
add byte [eax], al
add bh, al
test byte [esp], ah
add al, 0
add byte [eax], al
add byte [eax], al
add bh, al
test byte [eax + ebp*8], ah
add al, 0
add byte [eax], al
add byte [eax], al
add byte [edi], cl
mov bh, 0x84
and al, 0xd2
add al, 0
add cl, al
call 0x44cc6545
and al, 0x22
mov eax, dword [esp + 0x5c]
pop esp
mov ecx, dword [esp + 0x60]
imul eax, ecx
movzx ecx, word [esp + 0x22]
imul eax, ecx
mov dword [esp + 0x4b8], eax
mov eax, dword [esp + 0x4b8]
mov dword [esp], eax
call fcn.00409130
mov dword [esp + 0x34], eax
mov byte [esp + 0x21], 0
mov dword [esp], 0
mov eax, dword [sym.imp.USER32.dll_GetDC]
call eax
sub esp, 4
mov dword [esp + 0x54], eax
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0x60]
mov edx, dword [esp + 0x4fc]
mov esi, dword [esp + 0x54]
lea edi, [esp + 0x4c4]
mov dword [esp + 0x14], edi
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], ecx
mov dword [esp + 4], edx
mov dword [esp], esi
mov dword [esp + 0x18], 0
mov dword [esp + 8], 0
add byte [eax], al
add byte [ecx + sym.imp.GDI32.dll_GetDIBits], ah
add byte [eax], al
add byte [ecx + sym.imp.GDI32.dll_GetDIBits], ah
call eax
sub esp, 0x1c
mov dword [esp + 0x4b4], eax
mov dword [esp + 0x44], 0xac1df8e9
lea eax, [esp + 0x44]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x4bc]
mov esp, 0x8b000004
mov word [eax + eax*8], fs
add al, 0
add byte [ebx - 0x7b387efc], cl
and al, 0xac
add al, 0
add byte [eax - 0x38ffbbc5], al
test byte [eax + ebp*4], ah
add al, 0
add byte [ebp + 1], cl
add byte [eax], al
mov esp, 0x8b000004
mov word [eax + eax*8], fs
add al, 0
add byte [ebx - 0x7b387efc], cl
and al, 0xac
add al, 0
add byte [eax - 0x38ffbbc5], al
test byte [eax + ebp*4], ah
add al, 0
add byte [ebp + 1], cl
add byte [eax], al
mov dword [esp + 0x4a4], 0x444e60
mov dword [esp + 0x49c], 0x444e68
add al, 0
add byte [eax + 0x4e], ch
inc esp
add bh, al
test byte [esp + edx*4], ah
add al, 0
add byte [eax + 0x4e], dh
inc esp
add bh, al
test byte [esp + ecx*4], ah
add al, 0
add byte [eax + 0x4e], bh
inc esp
add bh, al
test byte [esp + eax*4], ah
add al, 0
add byte [eax - 0x38ffbbb2], al
test byte [esp + edi*2], ah
add al, 0
add byte [eax - 0x38ffbbb2], cl
test byte [esp + esi*2], ah
add al, 0
add byte [eax - 0x38ffbbb2], dl
test byte [esp + ebp*2], ah
add al, 0
add byte [eax - 0x38ffbbb2], bl
test byte [esp], ah
add al, 0
add byte [eax - 0x38ffbbb2], ah
test byte [esp + ebx*2], ah
and al, 0x5c
add al, 0
add byte [eax - 0x38ffbbb2], ch
test byte [esp + edx*2], ah
add al, 0
add byte [eax - 0x38ffbbb2], dh
test byte [esp + ecx*2], ah
add al, 0
add byte [eax - 0x38ffbbb2], bh
test byte [esp + eax*2], ah
add al, 0
add al, al
dec esi
inc esp
add bh, al
test byte [esp + edi], ah
add al, 0
add al, cl
dec esi
inc esp
add bh, al
test byte [esp + esi], ah
add al, 0
add al, dl
dec esi
inc esp
add bh, al
test byte [esp + ebp], ah
add al, 0
add al, bl
dec esi
inc esp
add bh, al
test byte [esp], ah
add al, 0
add al, ah
dec esi
inc esp
add bh, al
test byte [esp + ebx], ah
add al, 0
add al, ch
dec esi
inc esp
add bh, al
test byte [esp + edx], ah
and al, 0x14
add al, 0
add al, dh
dec esi
inc esp
add bh, al
test byte [esp + ecx], ah
add al, 0
add al, bh
dec esi
inc esp
add bh, al
test byte [esp + eax], ah
add al, 0
add byte [eax], al
dec edi
inc esp
add bh, al
test byte [esp + edi*8], ah
add eax, dword [eax]
add byte [eax], cl
dec edi
inc esp
add bh, al
test byte [esp + esi*8], ah
hlt
add eax, dword [eax]
add byte [eax], dl
dec edi
inc esp
add bh, al
test byte [esp + ebp*8], ah
add eax, dword [eax]
add byte [eax], bl
dec edi
inc esp
add bh, al
test byte [esp], ah
add eax, dword [eax]
add byte [eax], ah
dec edi
inc esp
add bh, al
test byte [esp + ebx*8], ah
add eax, dword [eax]
add byte [eax], ch
dec edi
inc esp
add bh, al
test byte [esp + edx*8], ah
add eax, dword [eax]
add byte [eax], dh
dec edi
inc esp
add bh, al
test byte [esp + ecx*8], ah
add eax, dword [eax]
add byte [eax], bh
cmp byte [edi + 0x44], cl
add bh, al
test byte [esp + eax*8], ah
add eax, dword [eax]
add byte [eax + 0x4f], al
inc esp
add bh, al
test byte [esp + edi*4], ah
add eax, dword [eax]
add byte [eax + 0x4f], cl
inc esp
add bh, al
test byte [esp + esi*4], ah
add eax, dword [eax]
add byte [eax + 0x4f], dl
inc esp
add bh, al
test byte [esp + ebp*4], ah
add eax, dword [eax]
add byte [eax + 0x4f], bl
inc esp
add bh, al
test byte [esp], ah
add eax, dword [eax]
add byte [eax + 0x4f], ah
inc esp
add bh, al
test byte [esp + ebx*4], ah
add eax, dword [eax]
add byte [eax + 0x4f], ch
inc esp
add bh, al
test byte [esp + edx*4], ah
add eax, dword [eax]
add byte [eax + 0x4f], dh
inc esp
add bh, al
test byte [esp + ecx*4], ah
add eax, dword [eax]
add byte [eax + 0x4f], bh
inc esp
add bh, al
test byte [esp + eax*4], ah
add eax, dword [eax]
add byte [eax - 0x38ffbbb1], al
test byte [esp + edi*2], ah
add eax, dword [eax]
add byte [eax - 0x38ffbbb1], cl
test byte [esp + esi*2], ah
add eax, dword [eax]
add byte [eax - 0x38ffbbb1], dl
test byte [esp + ebp*2], ah
add eax, dword [eax]
add byte [eax - 0x38ffbbb1], bl
test byte [esp], ah
add eax, dword [eax]
add byte [eax - 0x38ffbbb1], ah
test byte [esp + ebx*2], ah
add eax, dword [eax]
add byte [eax - 0x38ffbbb1], ch
test byte [esp + edx*2], ah
add eax, dword [eax]
add byte [eax - 0x38ffbbb1], dh
test byte [esp + ecx*2], ah
add eax, dword [eax]
add byte [eax - 0x38ffbbb1], bh
test byte [esp + eax*2], ah
add eax, dword [eax]
add al, al
dec edi
inc esp
add bh, al
test byte [esp + edi], ah
add eax, dword [eax]
add al, cl
dec edi
inc esp
add bh, al
test byte [esp + esi], ah
add eax, dword [eax]
add al, dl
dec edi
inc esp
add bh, al
test byte [esp + ebp], ah
add eax, dword [eax]
add al, bl
dec edi
inc esp
add bh, al
test byte [esp], ah
add eax, dword [eax]
add al, ah
dec edi
inc esp
add bh, al
test byte [esp + ebx], ah
add eax, dword [eax]
add byte [eax], al
call 0xc7434686
test byte [esp + edx], ah
add eax, dword [eax]
add al, dh
dec edi
inc esp
add bh, al
test byte [esp + ecx], ah
add eax, dword [eax]
add al, bh
dec edi
inc esp
add bh, al
test byte [esp + eax], ah
add eax, dword [eax]
add byte [eax], al
push eax
inc esp
add bh, al
test byte [esp + edi*8], ah
add al, byte [eax]
add byte [eax], cl
push eax
inc esp
add bh, al
test byte [esp + esi*8], ah
add al, byte [eax]
add byte [eax], dl
push eax
inc esp
add bh, al
test byte [esp + ebp*8], ah
add al, byte [eax]
add byte [eax], bl
push eax
inc esp
add bh, al
test byte [esp], ah
add al, byte [eax]
add byte [eax], ah
push eax
inc esp
add bh, al
test byte [esp + ebx*8], ah
add al, byte [eax]
add byte [eax], ch
push eax
inc esp
add bh, al
test byte [esp + edx*8], ah
add al, byte [eax]
add byte [eax], dh
push eax
inc esp
add bh, al
test byte [esp + ecx*8], ah
add al, byte [eax]
add byte [eax], bh
push eax
inc esp
add bh, al
test byte [esp + eax*8], ah
add al, byte [eax]
add byte [eax + 0x50], al
inc esp
add bh, al
test byte [esp + edi*4], ah
add al, byte [eax]
add byte [eax + 0x50], cl
inc esp
add bh, al
test byte [esp + esi*4], ah
add al, byte [eax]
add byte [eax + 0x50], dl
inc esp
add bh, al
test byte [esp + ebp*4], ah
add al, byte [eax]
add byte [eax + 0x50], bl
inc esp
add bh, al
test byte [esp], ah
add al, byte [eax]
add byte [eax + 0x50], ah
inc esp
add bh, al
test byte [esp + ebx*4], ah
add al, byte [eax]
add byte [eax + 0x50], ch
inc esp
add bh, al
test byte [esp + edx*4], ah
add al, byte [eax]
add byte [eax + 0x50], dh
inc esp
invalid
add al, 0
add byte [eax + 0x4e], ch
inc esp
add bh, al
test byte [esp + edx*4], ah
add al, 0
add byte [eax + 0x4e], dh
inc esp
add bh, al
test byte [esp + ecx*4], ah
add al, 0
add byte [eax + 0x4e], bh
inc esp
add bh, al
test byte [esp + eax*4], ah
add al, 0
add byte [eax - 0x38ffbbb2], al
test byte [esp + edi*2], ah
add al, 0
add byte [eax - 0x38ffbbb2], cl
test byte [esp + esi*2], ah
add al, 0
add byte [eax - 0x38ffbbb2], dl
test byte [esp + ebp*2], ah
add al, 0
add byte [eax - 0x38ffbbb2], bl
test byte [esp], ah
add al, 0
add byte [eax - 0x38ffbbb2], ah
test byte [esp + ebx*2], ah
and al, 0x5c
and al, 0x5c
add al, 0
add byte [eax - 0x38ffbbb2], ch
test byte [esp + edx*2], ah
add al, 0
add byte [eax - 0x38ffbbb2], dh
test byte [esp + ecx*2], ah
add al, 0
add byte [eax - 0x38ffbbb2], bh
test byte [esp + eax*2], ah
add al, 0
add al, al
dec esi
inc esp
add bh, al
test byte [esp + edi], ah
add al, 0
add al, cl
dec esi
inc esp
add bh, al
test byte [esp + esi], ah
add al, 0
add al, dl
dec esi
inc esp
add bh, al
test byte [esp + ebp], ah
add al, 0
add al, bl
dec esi
inc esp
add bh, al
test byte [esp], ah
add al, 0
add al, ah
dec esi
inc esp
add bh, al
test byte [esp + ebx], ah
add al, 0
add al, ch
dec esi
inc esp
add bh, al
test byte [esp + edx], ah
and al, 0x14
and al, 0x14
add al, 0
add al, dh
dec esi
inc esp
add bh, al
test byte [esp + ecx], ah
add al, 0
add al, bh
dec esi
inc esp
add bh, al
test byte [esp + eax], ah
add al, 0
add byte [eax], al
dec edi
inc esp
add bh, al
test byte [esp + edi*8], ah
add eax, dword [eax]
add byte [eax], cl
dec edi
inc esp
add bh, al
test byte [esp + esi*8], ah
hlt
add eax, dword [eax]
add byte [eax], dl
dec edi
inc esp
add bh, al
test byte [esp + ebp*8], ah
add eax, dword [eax]
add byte [eax], bl
dec edi
inc esp
add bh, al
test byte [esp], ah
add eax, dword [eax]
add byte [eax], ah
dec edi
inc esp
add bh, al
test byte [esp + ebx*8], ah
add eax, dword [eax]
add byte [eax], ch
dec edi
inc esp
add bh, al
test byte [esp + edx*8], ah
add eax, dword [eax]
add byte [eax], dh
dec edi
inc esp
add bh, al
test byte [esp + ecx*8], ah
add eax, dword [eax]
add byte [eax], bh
cmp byte [edi + 0x44], cl
hlt
cmp byte [edi + 0x44], cl
add bh, al
test byte [esp + eax*8], ah
add eax, dword [eax]
add byte [eax + 0x4f], al
inc esp
add bh, al
test byte [esp + edi*4], ah
add eax, dword [eax]
add byte [eax + 0x4f], cl
inc esp
add bh, al
test byte [esp + esi*4], ah
add eax, dword [eax]
add byte [eax + 0x4f], dl
inc esp
add bh, al
test byte [esp + ebp*4], ah
add eax, dword [eax]
add byte [eax + 0x4f], bl
inc esp
add bh, al
test byte [esp], ah
add eax, dword [eax]
add byte [eax + 0x4f], ah
inc esp
add bh, al
test byte [esp + ebx*4], ah
add eax, dword [eax]
add byte [eax + 0x4f], ch
inc esp
add bh, al
test byte [esp + edx*4], ah
add eax, dword [eax]
add byte [eax + 0x4f], dh
inc esp
add bh, al
test byte [esp + ecx*4], ah
add eax, dword [eax]
add byte [eax + 0x4f], bh
inc esp
add bh, al
test byte [esp + eax*4], ah
add eax, dword [eax]
add byte [eax - 0x38ffbbb1], al
test byte [esp + edi*2], ah
add eax, dword [eax]
add byte [eax - 0x38ffbbb1], cl
test byte [esp + esi*2], ah
add eax, dword [eax]
add byte [eax - 0x38ffbbb1], dl
test byte [esp + ebp*2], ah
add eax, dword [eax]
add byte [eax - 0x38ffbbb1], bl
test byte [esp], ah
add eax, dword [eax]
add byte [eax - 0x38ffbbb1], ah
test byte [esp + ebx*2], ah
add eax, dword [eax]
add byte [eax - 0x38ffbbb1], ch
test byte [esp + edx*2], ah
add eax, dword [eax]
add byte [eax - 0x38ffbbb1], dh
test byte [esp + ecx*2], ah
add eax, dword [eax]
add byte [eax - 0x38ffbbb1], bh
test byte [esp + eax*2], ah
add eax, dword [eax]
add al, al
dec edi
inc esp
add bh, al
test byte [esp + edi], ah
add eax, dword [eax]
add al, cl
dec edi
inc esp
add bh, al
test byte [esp + esi], ah
add eax, dword [eax]
add al, dl
dec edi
inc esp
add bh, al
test byte [esp + ebp], ah
add eax, dword [eax]
add al, bl
dec edi
inc esp
add bh, al
test byte [esp], ah
add eax, dword [eax]
add al, ah
dec edi
inc esp
add bh, al
test byte [esp + ebx], ah
add eax, dword [eax]
add byte [eax], al
call 0xc7434686
add byte [eax], al
call 0xc7434686
test byte [esp + edx], ah
add eax, dword [eax]
add al, dh
dec edi
inc esp
add bh, al
test byte [esp + ecx], ah
add eax, dword [eax]
add al, bh
dec edi
inc esp
add bh, al
test byte [esp + eax], ah
add eax, dword [eax]
add byte [eax], al
push eax
inc esp
add bh, al
test byte [esp + edi*8], ah
add al, byte [eax]
add byte [eax], cl
push eax
inc esp
add bh, al
test byte [esp + esi*8], ah
add al, byte [eax]
add byte [eax], dl
push eax
inc esp
add bh, al
test byte [esp + ebp*8], ah
add al, byte [eax]
add byte [eax], bl
push eax
inc esp
add bh, al
test byte [esp], ah
add al, byte [eax]
add byte [eax], ah
push eax
inc esp
add bh, al
test byte [esp + ebx*8], ah
add al, byte [eax]
add byte [eax], ch
push eax
inc esp
add bh, al
test byte [esp + edx*8], ah
add al, byte [eax]
add byte [eax], dh
push eax
inc esp
add bh, al
test byte [esp + ecx*8], ah
add al, byte [eax]
add byte [eax], bh
push eax
inc esp
add bh, al
test byte [esp + eax*8], ah
add al, byte [eax]
add byte [eax + 0x50], al
inc esp
add bh, al
test byte [esp + edi*4], ah
add al, byte [eax]
add byte [eax + 0x50], cl
inc esp
add bh, al
test byte [esp + esi*4], ah
add al, byte [eax]
add byte [eax + 0x50], dl
inc esp
add bh, al
test byte [esp + ebp*4], ah
add al, byte [eax]
add byte [eax + 0x50], bl
inc esp
add bh, al
test byte [esp], ah
add al, byte [eax]
add byte [eax + 0x50], ah
inc esp
add bh, al
test byte [esp + ebx*4], ah
add al, byte [eax]
add byte [eax + 0x50], ch
inc esp
add bh, al
test byte [esp + edx*4], ah
add al, byte [eax]
add byte [eax + 0x50], dh
inc esp
add bh, al
mov dword [esp + 0x28c], 0x445078
mov dword [esp + case.0x42370d.504], 0x445080
mov dword [esp + case.0x42370d.505], 0x445088
mov dword [esp + case.0x42370d.506], 0x445090
invalid
test byte [esp + ebp*2], ah
and al, 0x6c
mov dword [esp + 0x28c], 0x445078
mov dword [esp + case.0x42370d.504], 0x445080
mov dword [esp + case.0x42370d.505], 0x445088
mov dword [esp + case.0x42370d.506], 0x445090
mov dword [esp + case.0x42370d.507], 0x445098
and al, 0x6c
add al, byte [eax]
add byte [eax - 0x38ffbbb0], bl
test byte [esp], ah
add al, byte [eax]
add byte [eax - 0x38ffbbb0], ah
test byte [esp + ebx*2], ah
add al, byte [eax]
add byte [eax - 0x38ffbbb0], ch
test byte [esp + edx*2], ah
add al, byte [eax]
add byte [eax - 0x38ffbbb0], dh
test byte [esp + ecx*2], ah
add al, byte [eax]
add byte [eax - 0x38ffbbb0], bh
test byte [esp + eax*2], ah
add al, byte [eax]
add al, al
push eax
inc esp
add bh, al
test byte [esp + edi], ah
add al, byte [eax]
add al, cl
push eax
inc esp
add bh, al
test byte [esp + esi], ah
add al, byte [eax]
add al, dl
push eax
inc esp
add bh, al
test byte [esp + ebp], ah
add al, byte [eax]
add al, bl
push eax
inc esp
add bh, al
test byte [esp], ah
and al, 0x24
add al, byte [eax]
add al, ah
push eax
inc esp
add bh, al
test byte [esp + ebx], ah
add al, byte [eax]
add al, ch
push eax
inc esp
add bh, al
test byte [esp + edx], ah
add al, byte [eax]
add al, dh
push eax
inc esp
add bh, al
test byte [esp + ecx], ah
add al, byte [eax]
add al, bh
push eax
inc esp
add bh, al
test byte [esp + eax], ah
add al, byte [eax]
add byte [eax], al
push ecx
inc esp
add bh, al
test byte [esp + edi*8], ah
add dword [eax], eax
add byte [eax], cl
push ecx
inc esp
add bh, al
test byte [esp + esi*8], ah
add dword [eax], eax
add byte [eax], dl
push ecx
inc esp
add bh, al
test byte [esp + ebp*8], ah
add dword [eax], eax
add byte [eax], bl
push ecx
inc esp
add bh, al
test byte [esp], ah
and al, 0xe4
add dword [eax], eax
add byte [eax], ah
push ecx
inc esp
add bh, al
test byte [esp + ebx*8], ah
add dword [eax], eax
add byte [eax - 0x38ffbbc5], al
test byte [eax + ebx*8], ah
add dword [eax], eax
add ah, dl
add dword [eax], eax
add bh, al
test byte [esp + edx*8], ah
add dword [eax], eax
add byte [eax - 0x38ffbbc5], al
test byte [eax + edx*8], ah
add dword [eax], eax
add ah, dl
aam 1
add byte [eax], al
and al, 0x6c
add al, byte [eax]
add byte [eax - 0x38ffbbb0], bl
test byte [esp], ah
add al, byte [eax]
add byte [eax - 0x38ffbbb0], ah
test byte [esp + ebx*2], ah
add al, byte [eax]
add byte [eax - 0x38ffbbb0], ch
test byte [esp + edx*2], ah
add al, byte [eax]
add byte [eax - 0x38ffbbb0], dh
test byte [esp + ecx*2], ah
add al, byte [eax]
add byte [eax - 0x38ffbbb0], bh
test byte [esp + eax*2], ah
add al, byte [eax]
add al, al
push eax
inc esp
add bh, al
test byte [esp + edi], ah
add al, byte [eax]
add al, cl
push eax
inc esp
add bh, al
test byte [esp + esi], ah
add al, byte [eax]
add al, dl
push eax
inc esp
add bh, al
test byte [esp + ebp], ah
add al, byte [eax]
add al, bl
push eax
inc esp
add bh, al
test byte [esp], ah
and al, 0x24
and al, 0x24
add al, byte [eax]
add al, ah
push eax
inc esp
add bh, al
test byte [esp + ebx], ah
add al, byte [eax]
add al, ch
push eax
inc esp
add bh, al
test byte [esp + edx], ah
add al, byte [eax]
add al, dh
push eax
inc esp
add bh, al
test byte [esp + ecx], ah
add al, byte [eax]
add al, bh
push eax
inc esp
add bh, al
test byte [esp + eax], ah
add al, byte [eax]
add byte [eax], al
push ecx
inc esp
add bh, al
test byte [esp + edi*8], ah
add dword [eax], eax
add byte [eax], cl
push ecx
inc esp
add bh, al
test byte [esp + esi*8], ah
add dword [eax], eax
add byte [eax], dl
push ecx
inc esp
add bh, al
test byte [esp + ebp*8], ah
add dword [eax], eax
add byte [eax], bl
push ecx
inc esp
add bh, al
test byte [esp], ah
and al, 0xe4
and al, 0xe4
add dword [eax], eax
add byte [eax], ah
push ecx
inc esp
add bh, al
test byte [esp + ebx*8], ah
add dword [eax], eax
add byte [eax - 0x38ffbbc5], al
test byte [eax + ebx*8], ah
add dword [eax], eax
add ah, dl
add dword [eax], eax
add bh, al
test byte [esp + edx*8], ah
add dword [eax], eax
add byte [eax - 0x38ffbbc5], al
test byte [eax + edx*8], ah
add dword [eax], eax
add ah, dl
aam 1
add byte [eax], al
mov dword [esp + case.0x42370d.102], 0x443b80
mov dword [esp + 0x1c8], 0x1d4
mov dword [esp + case.0x42370d.102], 0x443b80
mov dword [esp + 0x1c0], 0x1d4
invalid
aam 1
add byte [eax], al
mov dword [esp + case.0x42370d.102], 0x443b80
mov dword [esp + 0x1c8], 0x1d4
mov dword [esp + case.0x42370d.102], 0x443b80
mov dword [esp + 0x1c0], 0x1d4
mov dword [esp + case.0x42370d.102], 0x443b80
test byte [esp + edi*4], ah
add dword [eax], eax
add byte [eax - 0x38ffbbc5], al
test byte [eax + edi*4], ah
add dword [eax], eax
add ah, dl
add dword [eax], eax
add bh, al
test byte [esp + esi*4], ah
add dword [eax], eax
add byte [eax - 0x38ffbbc5], al
test byte [eax + esi*4], ah
add dword [eax], eax
add ah, dl
add dword [eax], eax
add bh, al
test byte [esp + ebp*4], ah
add dword [eax], eax
add byte [eax - 0x38ffbbc5], al
test byte [eax + ebp*4], ah
add dword [eax], eax
add ah, dl
add dword [eax], eax
add bh, al
test byte [esp], ah
add dword [eax], eax
add byte [eax - 0x38ffbbc5], al
test byte [eax], ah
add dword [eax], eax
add ah, dl
add dword [eax], eax
add bh, al
test byte [esp + ebx*4], ah
add dword [eax], eax
invalid
cmp byte [ebx], 0x44
invalid
test byte [esp + edi*4], ah
add dword [eax], eax
add byte [eax - 0x38ffbbc5], al
test byte [eax + edi*4], ah
add dword [eax], eax
add ah, dl
add dword [eax], eax
add bh, al
test byte [esp + esi*4], ah
add dword [eax], eax
add byte [eax - 0x38ffbbc5], al
test byte [eax + esi*4], ah
add dword [eax], eax
add ah, dl
add dword [eax], eax
add bh, al
test byte [esp + ebp*4], ah
add dword [eax], eax
add byte [eax - 0x38ffbbc5], al
test byte [eax + ebp*4], ah
add dword [eax], eax
add ah, dl
add dword [eax], eax
add bh, al
test byte [esp], ah
add dword [eax], eax
add byte [eax - 0x38ffbbc5], al
test byte [eax], ah
add dword [eax], eax
add ah, dl
add dword [eax], eax
add bh, al
test byte [esp + ebx*4], ah
add dword [eax], eax
add byte [eax - 0x38ffbbc5], al
mov dword [esp + 0x198], 0x1d4
mov dword [esp + case.0x42370d.102], 0x443b80
mov dword [esp + 0x190], 0x1d4
mov dword [esp + case.0x42370d.102], 0x443b80
mov dword [esp + 0x188], 0x1d4
aam 1
add byte [eax], al
mov dword [esp + case.0x42370d.102], 0x443b80
mov dword [esp + 0x180], 0x1d4
mov dword [esp + case.0x42370d.102], 0x443b80
mov dword [esp + 0x178], 0x1d4
mov dword [esp + case.0x42370d.102], 0x443b80
mov dword [esp + 0x170], 0x1d4
add byte [eax], al
aam 1
add byte [eax], al
mov dword [esp + case.0x42370d.102], 0x443b80
mov dword [esp + 0x168], 0x1d4
mov dword [esp + case.0x42370d.102], 0x443b80
mov dword [esp + 0x160], 0x1d4
mov dword [esp + case.0x42370d.102], 0x443b80
mov dword [esp + 0x158], 0x1d4
mov dword [esp + case.0x42370d.102], 0x443b80
mov dword [esp + 0x150], 0x1d4
mov dword [esp + case.0x42370d.102], 0x443b80
cmp eax, dword [eax + eax - 0x39]
mov dword [esp + 0x198], 0x1d4
mov dword [esp + case.0x42370d.102], 0x443b80
mov dword [esp + 0x190], 0x1d4
mov dword [esp + case.0x42370d.102], 0x443b80
mov dword [esp + 0x188], 0x1d4
aam 1
add byte [eax], al
aam 1
add byte [eax], al
mov dword [esp + case.0x42370d.102], 0x443b80
mov dword [esp + 0x180], 0x1d4
mov dword [esp + case.0x42370d.102], 0x443b80
mov dword [esp + 0x178], 0x1d4
mov dword [esp + case.0x42370d.102], 0x443b80
mov dword [esp + 0x170], 0x1d4
add byte [eax], al
aam 1
add byte [eax], al
add byte [eax], al
aam 1
add byte [eax], al
mov dword [esp + case.0x42370d.102], 0x443b80
mov dword [esp + 0x168], 0x1d4
mov dword [esp + case.0x42370d.102], 0x443b80
mov dword [esp + 0x160], 0x1d4
mov dword [esp + case.0x42370d.102], 0x443b80
mov dword [esp + 0x158], 0x1d4
mov dword [esp + case.0x42370d.102], 0x443b80
mov dword [esp + 0x150], 0x1d4
mov dword [esp + case.0x42370d.102], 0x443b80
cmp eax, dword [eax + eax - 0x39]
test byte [eax + ecx*2], ah
add dword [eax], eax
add ah, dl
add dword [eax], eax
add bh, al
test byte [esp + eax*2], ah
add dword [eax], eax
add byte [eax - 0x38ffbbc5], al
test byte [eax + eax*2], ah
add dword [eax], eax
add ah, dl
add dword [eax], eax
add bh, al
test byte [esp + edi], ah
add dword [eax], eax
add byte [eax - 0x38ffbbc5], al
test byte [eax + edi], ah
and al, 0x38
add dword [eax], eax
add ah, dl
add dword [eax], eax
add bh, al
test byte [esp + esi], ah
add dword [eax], eax
add byte [eax - 0x38ffbbc5], al
test byte [eax + esi], ah
add dword [eax], eax
add ah, dl
add dword [eax], eax
add bh, al
test byte [esp + ebp], ah
add dword [eax], eax
add byte [eax - 0x38ffbbc5], al
cmp eax, dword [eax + eax - 0x39]
test byte [eax + ebp], ah
add dword [eax], eax
add ah, dl
add dword [eax], eax
add bh, al
test byte [esp], ah
add dword [eax], eax
add byte [eax - 0x38ffbbc5], al
test byte [eax], ah
add dword [eax], eax
add ah, dl
add dword [eax], eax
add bh, al
test byte [esp + ebx], ah
add dword [eax], eax
add byte [eax - 0x38ffbbc5], al
test byte [eax + ebx], ah
add dword [eax], eax
add ah, dl
add dword [eax], eax
add bh, al
test byte [esp + edx], ah
add dword [eax], eax
add byte [eax - 0x38ffbbc5], al
test byte [eax + edx], ah
add dword [eax], eax
add ah, dl
add dword [eax], eax
add bh, al
test byte [esp + ecx], ah
add dword [eax], eax
add byte [eax - 0x38ffbbc5], al
test byte [eax + ecx], ah
add dword [eax], eax
add ah, dl
add dword [eax], eax
add bh, al
test byte [esp + eax], ah
add dword [eax], eax
add byte [eax - 0x38ffbbc5], al
test byte [eax + eax], ah
add dword [eax], eax
add ah, dl
add dword [eax], eax
add bh, al
test byte [esp + edi*8], ah
add byte [eax], al
add byte [eax - 0x38ffbbc5], al
test byte [eax + edi*8], ah
add byte [eax], al
add ah, dl
add dword [eax], eax
add bh, al
test byte [esp + esi*8], ah
add byte [eax], al
add byte [eax - 0x38ffbbc5], al
test byte [eax + esi*8], ah
add byte [eax], al
add ah, dl
add dword [eax], eax
add bh, al
test byte [esp + ebp*8], ah
add byte [eax], al
add byte [eax - 0x38ffbbc5], al
test byte [eax + ebp*8], ah
add byte [eax], al
add ah, dl
aam 1
add byte [eax], al
cmp eax, dword [eax + eax - 0x39]
test byte [eax + ecx*2], ah
add dword [eax], eax
add ah, dl
add dword [eax], eax
add bh, al
test byte [esp + eax*2], ah
add dword [eax], eax
add byte [eax - 0x38ffbbc5], al
test byte [eax + eax*2], ah
add dword [eax], eax
add ah, dl
add dword [eax], eax
add bh, al
test byte [esp + edi], ah
add dword [eax], eax
add byte [eax - 0x38ffbbc5], al
test byte [eax + edi], ah
and al, 0x38
and al, 0x38
add dword [eax], eax
add ah, dl
add dword [eax], eax
add bh, al
test byte [esp + esi], ah
add dword [eax], eax
add byte [eax - 0x38ffbbc5], al
test byte [eax + esi], ah
add dword [eax], eax
add ah, dl
add dword [eax], eax
add bh, al
test byte [esp + ebp], ah
add dword [eax], eax
add byte [eax - 0x38ffbbc5], al
cmp eax, dword [eax + eax - 0x39]
cmp eax, dword [eax + eax - 0x39]
test byte [eax + ebp], ah
add dword [eax], eax
add ah, dl
add dword [eax], eax
add bh, al
test byte [esp], ah
add dword [eax], eax
add byte [eax - 0x38ffbbc5], al
test byte [eax], ah
add dword [eax], eax
add ah, dl
add dword [eax], eax
add bh, al
test byte [esp + ebx], ah
add dword [eax], eax
add byte [eax - 0x38ffbbc5], al
test byte [eax + ebx], ah
add dword [eax], eax
add ah, dl
add dword [eax], eax
add bh, al
test byte [esp + edx], ah
add dword [eax], eax
add byte [eax - 0x38ffbbc5], al
test byte [eax + edx], ah
add dword [eax], eax
add ah, dl
add dword [eax], eax
add bh, al
test byte [esp + ecx], ah
add dword [eax], eax
add byte [eax - 0x38ffbbc5], al
test byte [eax + ecx], ah
add dword [eax], eax
add ah, dl
add dword [eax], eax
add bh, al
test byte [esp + eax], ah
add dword [eax], eax
add byte [eax - 0x38ffbbc5], al
test byte [eax + eax], ah
add dword [eax], eax
add ah, dl
add dword [eax], eax
add bh, al
test byte [esp + edi*8], ah
add byte [eax], al
add byte [eax - 0x38ffbbc5], al
test byte [eax + edi*8], ah
add byte [eax], al
add ah, dl
add dword [eax], eax
add bh, al
test byte [esp + esi*8], ah
add byte [eax], al
add byte [eax - 0x38ffbbc5], al
test byte [eax + esi*8], ah
add byte [eax], al
add ah, dl
add dword [eax], eax
add bh, al
test byte [esp + ebp*8], ah
add byte [eax], al
add byte [eax - 0x38ffbbc5], al
test byte [eax + ebp*8], ah
add byte [eax], al
add ah, dl
aam 1
add byte [eax], al
mov dword [esp + 0xe4], 0x443b80
mov dword [esp + 0xe0], 0x1d4
mov dword [esp + 0xdc], 0x443b80
invalid
test byte [eax + ebx*8], ah
add byte [eax], al
add ah, dl
add dword [eax], eax
aam 1
add byte [eax], al
mov dword [esp + 0xe4], case.0x42370d.102
mov dword [esp + 0xe0], 0x1d4
mov dword [esp + 0xdc], 0x443b80
mov dword [esp + 0xd8], 0x1d4
add bh, al
test byte [esp + edx*8], ah
add byte [eax], al
add byte [eax - 0x38ffbbc5], al
test byte [eax + edx*8], ah
add byte [eax], al
add ah, dl
add dword [eax], eax
add bh, al
test byte [esp + ecx*8], ah
add byte [eax], al
add byte [eax - 0x38ffbbc5], al
test byte [eax + ecx*8], ah
add byte [eax], al
add ah, dl
add dword [eax], eax
add bh, al
test byte [esp + eax*8], ah
add byte [eax], al
add byte [eax - 0x38ffbbc5], al
add bh, al
test byte [eax + eax*8], ah
add byte [eax], al
add ah, dl
add dword [eax], eax
add bh, al
test byte [esp + edi*4], ah
add byte [eax], al
add byte [eax - 0x38ffbbc5], al
test byte [eax + edi*4], ah
add byte [eax], al
add ah, dl
add dword [eax], eax
add bh, al
test byte [esp + esi*4], ah
add byte [eax], al
add byte [eax - 0x38ffbbc5], al
test byte [eax + esi*4], ah
add byte [eax], al
add ah, dl
add dword [eax], eax
add bh, al
test byte [esp + ebp*4], ah
add byte [eax], al
add byte [eax - 0x38ffbbc5], al
test byte [eax + ebp*4], ah
add byte [eax], al
add ah, dl
add dword [eax], eax
add bh, al
test byte [esp], ah
add byte [eax], al
add byte [eax - 0x38ffbbc5], al
test byte [eax], ah
add byte [eax], al
add ah, dl
add dword [eax], eax
add bh, al
test byte [esp + ebx*4], ah
add byte [eax], al
add byte [eax - 0x38ffbbc5], al
test byte [eax + ebx*4], ah
add byte [eax], al
add ah, dl
add dword [eax], eax
add bh, al
test byte [esp + edx*4], ah
add byte [eax], al
add byte [eax - 0x38ffbbc5], al
test byte [eax + edx*4], ah
add byte [eax], al
add ah, dl
add dword [eax], eax
add bh, al
test byte [esp + ecx*4], ah
add byte [eax], al
add byte [eax - 0x38ffbbc5], al
test byte [eax + ecx*4], ah
add byte [eax], al
add ah, dl
add dword [eax], eax
add bh, al
test byte [esp + eax*4], ah
add byte [eax], al
add byte [eax - 0x38ffbbc5], al
test byte [eax + eax*4], ah
add byte [eax], al
add ah, dl
add dword [eax], eax
add bh, al
inc esp
and al, 0x7c
cmp byte [ebx], 0x44
add bh, al
inc esp
and al, 0x78
aam 1
add byte [eax], al
add bh, al
test byte [esp + edx*8], ah
add byte [eax], al
add byte [eax - 0x38ffbbc5], al
test byte [eax + edx*8], ah
add byte [eax], al
add ah, dl
add dword [eax], eax
add bh, al
test byte [esp + ecx*8], ah
add byte [eax], al
add byte [eax - 0x38ffbbc5], al
test byte [eax + ecx*8], ah
add byte [eax], al
add ah, dl
add dword [eax], eax
add bh, al
test byte [esp + eax*8], ah
add byte [eax], al
add byte [eax - 0x38ffbbc5], al
add bh, al
add bh, al
test byte [eax + eax*8], ah
add byte [eax], al
add ah, dl
add dword [eax], eax
add bh, al
test byte [esp + edi*4], ah
add byte [eax], al
add byte [eax - 0x38ffbbc5], al
test byte [eax + edi*4], ah
add byte [eax], al
add ah, dl
add dword [eax], eax
add bh, al
test byte [esp + esi*4], ah
add byte [eax], al
add byte [eax - 0x38ffbbc5], al
test byte [eax + esi*4], ah
add byte [eax], al
add ah, dl
add dword [eax], eax
add bh, al
test byte [esp + ebp*4], ah
add byte [eax], al
add byte [eax - 0x38ffbbc5], al
test byte [eax + ebp*4], ah
add byte [eax], al
add ah, dl
add dword [eax], eax
add bh, al
test byte [esp], ah
add byte [eax], al
add byte [eax - 0x38ffbbc5], al
test byte [eax], ah
add byte [eax], al
add ah, dl
add dword [eax], eax
add bh, al
test byte [esp + ebx*4], ah
add byte [eax], al
add byte [eax - 0x38ffbbc5], al
test byte [eax + ebx*4], ah
add byte [eax], al
add ah, dl
add dword [eax], eax
add bh, al
test byte [esp + edx*4], ah
add byte [eax], al
add byte [eax - 0x38ffbbc5], al
test byte [eax + edx*4], ah
add byte [eax], al
add ah, dl
add dword [eax], eax
add bh, al
test byte [esp + ecx*4], ah
add byte [eax], al
add byte [eax - 0x38ffbbc5], al
test byte [eax + ecx*4], ah
add byte [eax], al
add ah, dl
add dword [eax], eax
add bh, al
test byte [esp + eax*4], ah
add byte [eax], al
add byte [eax - 0x38ffbbc5], al
test byte [eax + eax*4], ah
add byte [eax], al
add ah, dl
add dword [eax], eax
add bh, al
inc esp
and al, 0x7c
cmp byte [ebx], 0x44
add bh, al
inc esp
and al, 0x78
aam 1
add byte [eax], al
mov dword [esp + 0x74], case.0x42370d.102
mov dword [esp + 0x70], 0x14c
jmp eax
xor ecx, ecx
mov edx, eax
sub edx, 0x3c1ac982
setl cl
mov dword [esp + 0x368], ecx
mov ecx, dword [esp + 0x36c]
mov edx, dword [esp + 0x368]
mov ecx, dword [ecx + edx*4]
jmp ecx
xor ecx, ecx
sub eax, 0xf64284b4
sete cl
mov dword [esp + 0x2d0], ecx
mov eax, dword [esp + 0x2d4]
mov ecx, dword [esp + 0x2d0]
mov eax, dword [eax + ecx*4]
jmp eax
xor ecx, ecx
mov edx, eax
sub edx, 0xb20e1ad4
setl cl
mov dword [esp + 0x240], ecx
mov ecx, dword [esp + 0x244]
mov edx, dword [esp + 0x240]
mov ecx, dword [ecx + edx*4]
jmp ecx
xor ecx, ecx
mov edx, eax
sub edx, 0x6a8ad25c
setl cl
mov dword [esp + 0x490], ecx
mov ecx, dword [esp + 0x494]
mov edx, dword [esp + 0x490]
mov ecx, dword [ecx + edx*4]
jmp ecx
xor ecx, ecx
mov edx, eax
sub edx, 0x5da7103d
setl cl
mov dword [esp + 0x428], ecx
mov ecx, dword [esp + 0x42c]
mov edx, dword [esp + 0x428]
mov ecx, dword [ecx + edx*4]
jmp ecx
xor ecx, ecx
mov edx, eax
sub edx, 0xa9daf4e1
setl cl
mov dword [esp + 0x280], ecx
mov ecx, dword [esp + 0x284]
mov edx, dword [esp + 0x280]
mov ecx, dword [ecx + edx*4]
jmp ecx
xor ecx, ecx
mov edx, eax
sub edx, 0xfa8ca3b9
setl cl
mov dword [esp + 0x2f0], ecx
mov ecx, dword [esp + 0x2f4]
mov edx, dword [esp + 0x2f0]
mov ecx, dword [ecx + edx*4]
jmp ecx
xor ecx, ecx
sub eax, 0xd1eb5d69
sete cl
mov dword [esp + 0x290], ecx
mov eax, dword [esp + 0x294]
mov ecx, dword [esp + 0x290]
mov eax, dword [eax + ecx*4]
jmp eax
xor ecx, ecx
sub eax, 0x77580f3e
sete cl
mov dword [esp + 0x460], ecx
mov eax, dword [esp + 0x464]
mov ecx, dword [esp + 0x460]
mov eax, dword [eax + ecx*4]
jmp eax
xor ecx, ecx
sub eax, 0x7507ab13
sete cl
mov dword [esp + 0x440], ecx
mov eax, dword [esp + 0x444]
mov ecx, dword [esp + 0x440]
mov eax, dword [eax + ecx*4]
jmp eax
xor ecx, ecx
sub eax, 0x3c1ac982
sete cl
mov dword [esp + 0x360], ecx
mov eax, dword [esp + 0x364]
mov ecx, dword [esp + 0x360]
mov eax, dword [eax + ecx*4]
jmp eax
xor ecx, ecx
mov edx, eax
sub edx, 0x44356c9f
setl cl
mov dword [esp + 0x398], ecx
mov ecx, dword [esp + 0x39c]
mov word [esp + ebx*4], fs
add eax, dword [eax]
add byte [ebx + 0x3982494], cl
add byte [eax], al
mov word [esp + ebx*4], fs
add eax, dword [eax]
add byte [ebx + 0x3982494], cl
add byte [eax], al
mov ecx, dword [ecx + edx*4]
jmp ecx
xor ecx, ecx
sub eax, 0xb73dc428
sete cl
mov dword [esp + 0x250], ecx
mov eax, dword [esp + 0x254]
mov ecx, dword [esp + 0x250]
mov eax, dword [eax + ecx*4]
jmp eax
xor ecx, ecx
sub eax, 0xd06e9084
sete cl
mov dword [esp + 0x288], ecx
mov eax, dword [esp + 0x28c]
mov ecx, dword [esp + 0x288]
mov eax, dword [eax + ecx*4]
jmp eax
xor ecx, ecx
sub eax, 0x2d7fc581
sete cl
mov dword [esp + 0x358], ecx
mov eax, dword [esp + 0x35c]
mov ecx, dword [esp + 0x358]
mov eax, dword [eax + ecx*4]
jmp eax
xor ecx, ecx
sub eax, 0xc1608d7f
sete cl
mov dword [esp + 0x258], ecx
mov eax, dword [esp + 0x25c]
mov ecx, dword [esp + 0x258]
mov eax, dword [eax + ecx*4]
jmp eax
xor ecx, ecx
sub eax, 0x414184b3
sete cl
mov dword [esp + 0x388], ecx
mov eax, dword [esp + 0x38c]
mov ecx, dword [esp + 0x388]
mov eax, dword [eax + ecx*4]
jmp eax
xor ecx, ecx
sub eax, 0x5da7103d
sete cl
mov dword [esp + 0x410], ecx
mov eax, dword [esp + 0x414]
mov ecx, dword [esp + 0x410]
mov eax, dword [eax + ecx*4]
jmp eax
xor ecx, ecx
sub eax, 0x24efa75d
sete cl
mov dword [esp + 0x340], ecx
mov eax, dword [esp + 0x344]
mov ecx, dword [esp + 0x340]
mov eax, dword [eax + ecx*4]
jmp eax
add byte [eax], al
mov ecx, dword [ecx + edx*4]
jmp ecx
xor ecx, ecx
sub eax, 0x5f93d66b
sete cl
mov dword [esp + 0x418], ecx
mov eax, dword [esp + 0x41c]
mov ecx, dword [esp + 0x418]
add byte [eax], al
add byte [eax], al
mov eax, dword [eax + ecx*4]
jmp eax
xor ecx, ecx
sub eax, 0xf153c021
sete cl
mov dword [esp + 0x2b0], ecx
mov eax, dword [esp + 0x2b4]
mov ecx, dword [esp + 0x2b0]
mov eax, dword [eax + ecx*4]
jmp eax
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0x4a8]
mov edx, dword [esp + 0x4ac]
and al, 0xac
add al, 0
add byte [ebx - 0x1e0075f4], cl
and al, 0xac
add al, 0
add byte [ebx - 0x1e0075f4], cl
xor ecx, ecx
mov edx, eax
sub edx, 0x4d22c8a5
setl cl
mov dword [esp + 0x3c8], ecx
mov ecx, dword [esp + 0x3cc]
mov edx, dword [esp + 0x3c8]
mov ecx, dword [ecx + edx*4]
jmp ecx
mov eax, dword [esp + 0x48]
mov dword [esp], eax
call fcn.00409140
mov eax, dword [esp + 0x1c]
mov dword [eax], 0x5da7103d
mov eax, dword [esp + 0xb8]
mov ecx, dword [esp + 0xbc]
mov eax, dword [ecx + eax*4]
jmp eax
xor ecx, ecx
sub eax, 0x25655ffc
sete cl
xchg esp, eax
ror dword [ecx + 0x350248c], 0
add byte [ebx + 0x3542484], cl
add byte [eax], al
xchg esp, eax
ror dword [ecx + 0x350248c], 0
add byte [ebx + 0x3542484], cl
add byte [eax], al
mov ecx, dword [esp + 0x350]
mov eax, dword [eax + ecx*4]
jmp eax
xor ecx, ecx
mov edx, eax
sub edx, 0xb73dc428
setl cl
mov dword [esp + 0x278], ecx
mov ecx, dword [esp + 0x27c]
mov edx, dword [esp + 0x278]
mov ecx, dword [ecx + edx*4]
jmp ecx
xor ecx, ecx
mov edx, eax
sub edx, 0xc1608d7f
setl cl
mov dword [esp + 0x270], ecx
mov ecx, dword [esp + 0x274]
mov edx, dword [esp + 0x270]
mov ecx, dword [ecx + edx*4]
jmp ecx
xor ecx, ecx
mov edx, eax
sub edx, 0x7c33b8e0
setl cl
mov dword [esp + 0x478], ecx
mov ecx, dword [esp + 0x47c]
mov edx, dword [esp + 0x478]
mov ecx, dword [ecx + edx*4]
jmp ecx
xor ecx, ecx
sub eax, 0x4d22c8a5
sete cl
mov dword [esp + 0x3b0], ecx
mov eax, dword [esp + 0x3b4]
mov ecx, dword [esp + 0x3b0]
mov eax, dword [eax + ecx*4]
jmp eax
xor ecx, ecx
sub eax, 0xfa8ca3b9
sete cl
mov dword [esp + 0x2d8], ecx
mov eax, dword [esp + 0x2dc]
mov ecx, dword [esp + 0x2d8]
mov eax, dword [eax + ecx*4]
jmp eax
xor ecx, ecx
mov edx, eax
sub edx, 0x56072578
setl cl
mov dword [esp + 0x3c0], ecx
mov ecx, dword [esp + 0x3c4]
mov edx, dword [esp + 0x3c0]
mov ecx, dword [ecx + edx*4]
jmp ecx
and ecx, ebx
or edx, esi
not edx
or ecx, edx
not ecx
movzx eax, al
shl eax, 0x10
or ecx, eax
mov eax, dword [esp + 0x30]
inc esp
and al, 0x30
inc esp
and al, 0x30
mov edx, dword [esp + 0x24]
and al, 0x24
mov dword [eax + edx*4], ecx
mov eax, dword [esp + 0x1c]
mov dword [eax], 0xf64284b4
mov eax, dword [esp + 0x170]
mov ecx, dword [esp + 0x174]
mov eax, dword [ecx + eax*4]
jmp eax
xor ecx, ecx
sub eax, 0x5d68b0a2
sete cl
mov dword [esp + 0x408], ecx
mov eax, dword [esp + 0x40c]
mov ecx, dword [esp + 0x408]
mov eax, dword [eax + ecx*4]
jmp eax
xor ecx, ecx
mov edx, eax
sub edx, 0x1557cc51
setl cl
mov dword [esp + 0x310], ecx
mov ecx, dword [esp + 0x314]
mov edx, dword [esp + 0x310]
mov ecx, dword [ecx + edx*4]
jmp ecx
xor ecx, ecx
mov edx, eax
sub edx, 0x3d1a16b8
setl cl
mov dword [esp + 0x3d8], ecx
mov ecx, dword [esp + 0x3dc]
mov edx, dword [esp + 0x3d8]
mov ecx, dword [ecx + edx*4]
jmp ecx
xor ecx, ecx
mov edx, eax
sub edx, 0x25655ffc
setl cl
mov dword [esp + 0x378], ecx
mov ecx, dword [esp + 0x37c]
mov edx, dword [esp + 0x378]
mov ecx, dword [ecx + edx*4]
jmp ecx
xor ecx, ecx
mov edx, eax
sub edx, 0xd1eb5d69
setl cl
mov dword [esp + 0x298], ecx
mov ecx, dword [esp + 0x29c]
mov edx, dword [esp + 0x298]
mov ecx, dword [ecx + edx*4]
jmp ecx
loopne 0x43116e
xor ecx, ecx
leave
sub eax, 0x3d1a16b8
sete cl
mov dword [esp + 0x380], ecx
mov eax, dword [esp + 0x384]
push ss
sbb bh, byte [0x89c1940f]
mov word [eax + eax*4], fs
add eax, dword [eax]
add byte [ebx + 0x3842484], cl
add byte [eax], al
mov ecx, dword [esp + 0x380]
mov eax, dword [eax + ecx*4]
jmp eax
xor ecx, ecx
mov edx, eax
sub edx, 0x1e88ec6d
setl cl
mov dword [esp + 0x4a0], ecx
mov ecx, dword [esp + 0x4a4]
mov word [eax], fs
add al, 0
add byte [ebx + 0x4a4248c], cl
add byte [eax], al
mov edx, dword [esp + 0x4a0]
mov ecx, dword [ecx + edx*4]
jmp ecx
xor ecx, ecx
mov edx, eax
sub edx, 0xcf49e06
setl cl
mov dword [esp + 0x320], ecx
mov ecx, dword [esp + 0x324]
mov edx, dword [esp + 0x320]
mov ecx, dword [ecx + edx*4]
jmp ecx
xor ecx, ecx
mov edx, eax
sub edx, 0xcb9cf126
setl cl
mov dword [esp + 0x268], ecx
mov ecx, dword [esp + 0x26c]
mov edx, dword [esp + 0x268]
mov ecx, dword [ecx + edx*4]
jmp ecx
xor ecx, ecx
sub eax, 0x13bbee5d
sete cl
mov dword [esp + 0x300], ecx
mov eax, dword [esp + 0x304]
mov ecx, dword [esp + 0x300]
mov eax, dword [eax + ecx*4]
jmp eax
xor ecx, ecx
sub eax, 0x76e2b969
sete cl
mov dword [esp + 0x448], ecx
mov eax, dword [esp + 0x44c]
mov ecx, dword [esp + 0x448]
mov eax, dword [eax + ecx*4]
jmp eax
xor ecx, ecx
mov edx, eax
sub edx, 0x5d68b0a2
setl cl
mov dword [esp + 0x430], ecx
mov ecx, dword [esp + 0x434]
mov edx, dword [esp + 0x430]
mov ecx, dword [ecx + edx*4]
jmp ecx
xor ecx, ecx
mov edx, eax
sub edx, 0x579df4ba
setl cl
mov dword [esp + 0x400], ecx
mov ecx, dword [esp + 0x404]
mov edx, dword [esp + 0x400]
mov ecx, dword [ecx + edx*4]
jmp ecx
xor ecx, ecx
mov edx, eax
sub edx, 0xcd9fdef
setl cl
mov dword [esp + 0x2e8], ecx
mov ecx, dword [esp + 0x2ec]
mov edx, dword [esp + 0x2e8]
add byte [ebx - 0x1e006ef4], cl
add byte [ebx - 0x1e006ef4], cl
xor ecx, ecx
sub eax, 0x9c13319a
sete cl
mov dword [esp + 0x200], ecx
mov eax, dword [esp + 0x204]
mov ecx, dword [esp + 0x200]
mov eax, dword [eax + ecx*4]
jmp eax
add byte [eax], al
mov ecx, dword [esp + 0xac]
mov eax, dword [ecx + eax*4]
jmp eax
xor ecx, ecx
sub eax, 0x1557cc51
sete cl
mov dword [esp + 0x308], ecx
mov eax, dword [esp + 0x30c]
mov ecx, dword [esp + 0x308]
add byte [eax], al
add byte [eax], al
mov eax, dword [eax + ecx*4]
jmp eax
xor ecx, ecx
sub eax, 0x1e88ec6d
sete cl
mov dword [esp + 0x338], ecx
mov eax, dword [esp + 0x33c]
mov ecx, dword [esp + 0x338]
mov eax, dword [eax + ecx*4]
add al, 0x88
add al, 0x88
jmp eax
pop esp
sub eax, ecx
setl byte [esp + 0x2b]
mov eax, dword [esp + 0x1c]
mov dword [eax], 0x25655ffc
mov eax, dword [esp + 0x190]
mov ecx, dword [esp + 0x194]
mov eax, dword [ecx + eax*4]
jmp eax
xor ecx, ecx
sub eax, 0x7768e6eb
sete cl
mov dword [esp + 0x468], ecx
mov word [eax + ebp*2], fs
add al, 0
add byte [ebx + 0x46c2484], cl
add byte [eax], al
mov word [eax + ebp*2], fs
add al, 0
add byte [ebx + 0x46c2484], cl
add byte [eax], al
mov ecx, dword [esp + 0x468]
mov eax, dword [eax + ecx*4]
jmp eax
xchg esi, eax
mov eax, dword [esp + 0x118]
mov ecx, dword [esp + 0x11c]
mov eax, dword [ecx + eax*4]
jmp eax
xor ecx, ecx
mov edx, eax
sub edx, 0xac1df8e9
setl cl
mov dword [esp + 0x248], ecx
mov ecx, dword [esp + 0x24c]
mov edx, dword [esp + 0x248]
and al, 0x48
add al, byte [eax]
add byte [ebx - 0x1e006ef4], cl
and al, 0x48
add al, byte [eax]
add byte [ebx - 0x1e006ef4], cl
xor ecx, ecx
mov edx, eax
sub edx, 0xf153c021
setl cl
mov dword [esp + 0x2b8], ecx
mov ecx, dword [esp + 0x2bc]
mov edx, dword [esp + 0x2b8]
xchg esp, eax
and al, 0xb8
add al, byte [eax]
add byte [ebx - 0x1e006ef4], cl
xchg esp, eax
and al, 0xb8
add al, byte [eax]
add byte [ebx - 0x1e006ef4], cl
xor ecx, ecx
mov edx, eax
sub edx, 0x24efa75d
setl cl
mov dword [esp + 0x348], ecx
mov ecx, dword [esp + 0x34c]
mov edx, dword [esp + 0x348]
mov ecx, dword [ecx + edx*4]
jmp ecx
and al, 0x1c
mov dword [eax], 0xcf49e06
mov eax, dword [esp + 0x160]
mov ecx, dword [esp + 0x164]
mov eax, dword [ecx + eax*4]
jmp eax
invalid
loopne 0x4314e6
xor ecx, ecx
leave
mov edx, eax
sub edx, 0x5f93d66b
setl cl
mov dword [esp + 0x420], ecx
mov ecx, dword [esp + 0x424]
and al, 0x24
add al, 0
add byte [ebx + 0x4202494], cl
add byte [eax], al
and al, 0x24
add al, 0
add byte [ebx + 0x4202494], cl
add byte [eax], al
mov ecx, dword [ecx + edx*4]
jmp ecx
invalid
loope 0x43150d
xor ecx, ecx
leave
sub eax, 0x6a8ad25c
sete cl
mov dword [esp + 0x438], ecx
mov eax, dword [esp + 0x43c]
test byte [esp + edi], ah
add al, 0
invalid
mov word [eax + edi], fs
add al, 0
add byte [ebx + 0x43c2484], cl
test byte [esp + edi], ah
add al, 0
invalid
test byte [esp + edi], ah
add al, 0
add byte [ebx + 0x438248c], cl
add byte [eax], al
mov ecx, dword [esp + 0x438]
mov eax, dword [eax + ecx*4]
jmp eax
xor ecx, ecx
sub eax, 0x579df4ba
sete cl
mov dword [esp + 0x3e8], ecx
mov eax, dword [esp + 0x3ec]
invalid
add eax, dword [eax]
add byte [ebx + 0x3ec2484], cl
add byte [eax], al
invalid
add byte [ebx + 0x3e8248c], cl
add byte [eax], al
mov ecx, dword [esp + 0x3e8]
mov eax, dword [eax + ecx*4]
jmp eax
xor ecx, ecx
mov edx, eax
sub edx, 0xf64284b4
setl cl
mov dword [esp + 0x328], ecx
mov ecx, dword [esp + 0x32c]
mov edx, dword [esp + 0x328]
and al, 0x28
add eax, dword [eax]
add byte [ebx - 0x1e006ef4], cl
and al, 0x28
add eax, dword [eax]
add byte [ebx - 0x1e006ef4], cl
xor ecx, ecx
sub eax, 0xcd9fdef
sete cl
mov dword [esp + 0x2e0], ecx
mov eax, dword [esp + 0x2e4]
mov ecx, dword [esp + 0x2e0]
mov eax, dword [eax + ecx*4]
jmp eax
xor ecx, ecx
mov edx, eax
sub edx, 0xd06e9084
setl cl
mov dword [esp + 0x330], ecx
mov ecx, dword [esp + 0x334]
mov edx, dword [esp + 0x330]
mov ecx, dword [ecx + edx*4]
jmp ecx
add byte [ebx + 0x1cc248c], cl
add byte [eax], al
mov eax, dword [ecx + eax*4]
jmp eax
xor ecx, ecx
mov edx, eax
sub edx, 0x7768e6eb
setl cl
mov dword [esp + 0x480], ecx
mov ecx, dword [esp + 0x484]
mov edx, dword [esp + 0x480]
add al, 0
invalid
mov ecx, dword [ecx + edx*4]
xchg ecx, eax
add al, 0
add byte [ebx - 0x1e006ef4], cl
xchg ecx, eax
jmp ecx
xor ecx, ecx
sub eax, 0xa523b8e4
sete cl
mov dword [esp + 0x208], ecx
mov eax, dword [esp + 0x20c]
mov ecx, dword [esp + 0x208]
mov eax, dword [eax + ecx*4]
jmp eax
xchg ecx, eax
jmp ecx
xor ecx, ecx
mov edx, eax
sub edx, 0x76e2b969
setl cl
mov dword [esp + 0x450], ecx
mov ecx, dword [esp + 0x454]
mov edx, dword [esp + 0x450]
mov ecx, dword [ecx + edx*4]
jmp ecx
jne 0x431701
mov eax, 0x579df4ba
mov ecx, dword [esp + 0x1c]
mov dword [ecx], eax
mov eax, dword [esp + 0x188]
mov ecx, dword [esp + 0x18c]
and al, 0x8c
add dword [eax], eax
invalid
mov eax, dword [ecx + eax*4]
invalid
and al, 0x8c
add dword [eax], eax
add byte [ebx - 0x1f007efc], cl
invalid
jmp eax
cmp edi, 0x2dc931e0
invalid
jmp eax
xor ecx, ecx
sub eax, 0x57535ec6
sete cl
mov dword [esp + 0x3e0], ecx
mov eax, dword [esp + 0x3e4]
mov ecx, dword [esp + 0x3e0]
add eax, dword [eax]
add byte [ebx - 0x1f0077fc], cl
add eax, dword [eax]
add byte [ebx - 0x1f0077fc], cl
xor ecx, ecx
sub eax, 0x44356c9f
sete cl
mov dword [esp + 0x390], ecx
add byte [ebx + 0x3942484], cl
add byte [eax], al
add byte [ebx + 0x3942484], cl
add byte [eax], al
mov ecx, dword [esp + 0x390]
mov eax, dword [eax + ecx*4]
jmp eax
add esp, 0x4ec
pop esi
pop edi
pop ebx
ret
cmp ch, 0xff
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0x5c]
movzx edx, word [esp + 0x22]
imul ecx, edx
mov edx, dword [esp + 0x2c]
imul ecx, edx
add eax, ecx
mov dword [esp + 0x30], eax
mov dword [esp + 0x24], 0
mov eax, dword [esp + 0x1c]
mov dword [eax], 0xf153c021
mov eax, dword [esp + 0x1a8]
and al, 0xa8
add dword [eax], eax
add byte [ebx + 0x1ac248c], cl
add byte [eax], al
and al, 0xa8
add dword [eax], eax
add byte [ebx + 0x1ac248c], cl
add byte [eax], al
mov eax, dword [ecx + eax*4]
jmp eax
add byte [eax], al
mov ecx, dword [esp + 0x14c]
mov eax, dword [ecx + eax*4]
jmp eax
invalid
loopne 0x431818
xor ecx, ecx
leave
mov edx, eax
sub edx, 0xdc57f9e9
setl cl
mov dword [esp + 0x2c8], ecx
add al, byte [eax]
add byte [ebx + 0x2cc248c], cl
add byte [eax], al
add al, byte [eax]
add byte [ebx + 0x2cc248c], cl
add byte [eax], al
mov edx, dword [esp + 0x2c8]
mov ecx, dword [ecx + edx*4]
jmp ecx
xor ecx, ecx
mov edx, eax
sub edx, 0x492a7d17
setl cl
mov dword [esp + 0x3d0], ecx
mov ecx, dword [esp + 0x3d4]
pushfd
ror dword [ecx + 0x3d0248c], 0
add byte [ebx + 0x3d4248c], cl
add byte [eax], al
mov edx, dword [esp + 0x3d0]
mov ecx, dword [ecx + edx*4]
jmp ecx
xor ecx, ecx
sub eax, 0xe975a8f0
sete cl
mov dword [esp + 0x2a8], ecx
mov eax, dword [esp + 0x2ac]
mov ecx, dword [esp + 0x2a8]
mov eax, dword [eax + ecx*4]
jmp eax
sbb al, 0xc7
add byte [eax + 0x25], bh
js 0x43188a
js 0x43188a
pop es
push esi
mov eax, dword [esp + 0xe0]
mov ecx, dword [esp + 0xe4]
mov eax, dword [ecx + eax*4]
jmp eax
xor ecx, ecx
mov edx, eax
sub edx, 0x5d480728
sub byte [edi], al
dec eax
pop ebp
sub byte [edi], al
dec eax
pop ebp
setl cl
mov dword [esp + 0x3f8], ecx
mov ecx, dword [esp + 0x3fc]
invalid
clc
add eax, dword [eax]
add byte [ebx + 0x3fc248c], cl
add byte [eax], al
invalid
add byte [ebx + 0x3f82494], cl
add byte [eax], al
mov edx, dword [esp + 0x3f8]
mov ecx, dword [ecx + edx*4]
jmp ecx
xor ecx, ecx
mov edx, eax
sub edx, 0x57535ec6
setl cl
mov dword [esp + 0x498], ecx
mov ecx, dword [esp + 0x49c]
mov edx, dword [esp + 0x498]
mov ecx, dword [ecx + edx*4]
jmp ecx
in al, 0xb8
and esp, dword [ebp - 0x763e63f1]
mov word [eax + edx], fs
add al, byte [eax]
add byte [ebx + 0x214248c], cl
add byte [eax], al
mov edx, dword [esp + 0x210]
xchg esp, eax
and al, 0x10
add al, byte [eax]
add byte [ebx - 0x1e006ef4], cl
xchg esp, eax
and al, 0x10
add al, byte [eax]
add byte [ebx - 0x1e006ef4], cl
xor ecx, ecx
mov edx, eax
sub edx, 0x2d7fc581
setl cl
mov dword [esp + 0x370], ecx
mov ecx, dword [esp + 0x374]
mov edx, dword [esp + 0x370]
add byte [ebx - 0x1e006ef4], cl
add byte [ebx - 0x1e006ef4], cl
mov dword [esp + 0x3c], 0
movzx eax, word [esp + 0x22]
mov ecx, dword [esp + 0x5c]
mov edx, dword [esp + 0x60]
mov esi, dword [esp + 0x34]
lea edi, [esp + 0x3c]
cmp al, 0x89
jl 0x43195a
adc byte [ecx - 0x76f3dbbc], cl
push esp
and al, 8
cmp al, 0x89
jl 0x43195a
adc byte [ecx - 0x76f3dbbc], cl
push esp
and al, 8
mov dword [esp + 4], ecx
mov dword [esp], esi
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 9
add byte [eax], al
add al, ch
xor eax, 0x89fffd3a
inc esp
and al, 0x38
add byte [eax], al
add al, ch
xor eax, 0x89fffd3a
inc esp
and al, 0x38
dec dword [ecx - 0x74c7dbbc]
inc esp
and al, 0x38
mov eax, dword [esp + 0x38]
test eax, eax
mov eax, 0x4d22c8a5
jne 0x431971
mov eax, 0xd1eb5d69
mov ecx, dword [esp + 0x1c]
dec esp
and al, 0x1c
mov dword [ecx], eax
mov eax, dword [esp + 0xe8]
mov ecx, dword [esp + 0xec]
mov eax, dword [ecx + eax*4]
jmp eax
xor ecx, ecx
mov edx, eax
sub edx, 0x13bbee5d
setl cl
mov dword [esp + 0x318], ecx
mov ecx, dword [esp + 0x31c]
mov edx, dword [esp + 0x318]
mov ecx, dword [ecx + edx*4]
jmp ecx
xor ecx, ecx
sub eax, 0x7c33b8e0
sete cl
mov dword [esp + 0x470], ecx
mov eax, dword [esp + 0x474]
mov ecx, dword [esp + 0x470]
mov eax, dword [eax + ecx*4]
add al, 0x88
add al, 0x88
jmp eax
mov word [esp + ebp*2], fs
add dword [eax], eax
add byte [ebx - 0x1f007efc], cl
mov eax, dword [esp + 0x4c]
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x1c]
mov dword [eax], 0x96539c69
mov eax, dword [esp + 0x88]
mov ecx, dword [esp + 0x8c]
mov eax, dword [ecx + eax*4]
jmp eax
xor ecx, ecx
sub eax, 0x5d480728
sete cl
mov dword [esp + 0x3f0], ecx
mov eax, dword [esp + 0x3f4]
add byte [eax], al
add byte [eax], al
mov ecx, dword [esp + 0x3f0]
mov eax, dword [eax + ecx*4]
jmp eax
mov eax, dword [esp + 0x128]
mov ecx, dword [esp + 0x12c]
mov eax, dword [ecx + eax*4]
jmp eax
xor ecx, ecx
sub eax, 0xcf49e06
sete cl
mov dword [esp + 0x2f8], ecx
mov eax, dword [esp + 0x2fc]
mov ecx, dword [esp + 0x2f8]
add byte [ebx - 0x1f0077fc], cl
add byte [ebx - 0x1f0077fc], cl
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0x5c]
movzx edx, word [esp + 0x22]
imul ecx, edx
mov edx, dword [esp + 0x2c]
imul ecx, edx
add eax, ecx
mov dword [esp + 0x30], eax
mov dword [esp + 0x24], 0
mov eax, dword [esp + 0x1c]
mov dword [eax], 0xdc57f9e9
mov eax, dword [esp + 0xb0]
mov ecx, dword [esp + 0xb4]
mov eax, dword [ecx + eax*4]
jmp eax
xor ecx, ecx
sub eax, 0x492a7d17
pop ss
jge 0x431b3b
dec ecx
pop ss
jge 0x431b3b
dec ecx
sete cl
mov dword [esp + 0x3a8], ecx
mov eax, dword [esp + 0x3ac]
mov ecx, dword [esp + 0x3a8]
mov eax, dword [eax + ecx*4]
jmp eax
xor ecx, ecx
mov edx, eax
sub edx, 0x7507ab13
setl cl
mov dword [esp + 0x458], ecx
mov ecx, dword [esp + 0x45c]
ror dword [ecx + 0x458248c], 0
add byte [ebx + 0x45c248c], cl
add byte [eax], al
mov edx, dword [esp + 0x458]
mov ecx, dword [ecx + edx*4]
jmp ecx
xor ecx, ecx
sub eax, 0xdc57f9e9
sete cl
mov dword [esp + 0x2a0], ecx
mov word [eax], fs
add al, byte [eax]
add byte [ebx + 0x2a42484], cl
add byte [eax], al
mov word [eax], fs
add al, byte [eax]
add byte [ebx + 0x2a42484], cl
add byte [eax], al
mov ecx, dword [esp + 0x2a0]
mov eax, dword [eax + ecx*4]
jmp eax
xor ecx, ecx
sub eax, 0x56072578
sete cl
mov dword [esp + 0x3b8], ecx
mov eax, dword [esp + 0x3bc]
mov ecx, dword [esp + 0x3b8]
add byte [eax], al
mov eax, dword [eax + ecx*4]
jmp eax
mov bh, bh
loopne 0x431bf5
invalid
xor ecx, ecx
leave
mov edx, eax
sub edx, 0x77580f3e
setl cl
mov dword [esp + 0x488], ecx
add al, 0
add byte [ebx + 0x48c248c], cl
add byte [eax], al
add al, 0
add byte [ebx + 0x48c248c], cl
add byte [eax], al
mov edx, dword [esp + 0x488]
mov ecx, dword [ecx + edx*4]
jmp ecx
add byte [eax], al
add byte [eax], al
mov eax, dword [sym.imp.USER32.dll_ReleaseDC]
call eax
sub esp, 8
mov eax, dword [esp + 0x34]
mov dword [esp + 0x48], eax
dec eax
dec eax
mov eax, dword [esp + 0x48]
dec eax
test eax, eax
mov eax, 0x5da7103d
je 0x431c1d
mov eax, 0x1e88ec6d
mov ecx, dword [esp + 0x1c]
mov dword [ecx], eax
mov eax, dword [esp + 0xc0]
mov ecx, dword [esp + 0xc4]
add byte [eax], al
add byte [eax], al
mov eax, dword [ecx + eax*4]
jmp eax
xor ecx, ecx
mov edx, eax
sub edx, 0x414184b3
inc ecx
inc ecx
setl cl
mov dword [esp + 0x3a0], ecx
mov ecx, dword [esp + 0x3a4]
mov edx, dword [esp + 0x3a0]
mov ecx, dword [ecx + edx*4]
jmp ecx
xor ecx, ecx
sub eax, 0xcb9cf126
sete cl
xchg esp, eax
ror dword [ecx + 0x260248c], 0
add byte [ebx + 0x2642484], cl
add byte [eax], al
xchg esp, eax
ror dword [ecx + 0x260248c], 0
add byte [ebx + 0x2642484], cl
add byte [eax], al
mov ecx, dword [esp + 0x260]
mov eax, dword [eax + ecx*4]
jmp eax
add bh, ch
std
invalid
xor ecx, ecx
mov edx, eax
sub edx, 0xe975a8f0
setl cl
mov dword [esp + 0x2c0], ecx
mov ecx, dword [esp + 0x2c4]
add byte [eax], al
add byte [eax], al
mov edx, dword [esp + 0x2c0]
mov ecx, dword [ecx + edx*4]
jmp ecx
nop
nop
nop
movzx ebx, byte [edx]
cmp bl, 1
sbb edx, 0xffffffff
mov byte [ecx + eax], bl
inc eax
cmp esi, eax
jne 0x431cf0
mov esi, edi
sub esi, eax
add ecx, eax
mov eax, ecx
cmp edi, 4
jae 0x431d20
jmp 0x431d56
nop
nop
movzx eax, byte [edx]
cmp al, 1
sbb edx, 0xffffffff
mov byte [ecx], al
movzx eax, byte [edx]
cmp al, 1
sbb edx, 0xffffffff
mov byte [ecx + 1], al
movzx eax, byte [edx]
cmp al, 1
sbb edx, 0xffffffff
mov byte [ecx + 2], al
movzx ebx, byte [edx]
cmp bl, 1
sbb edx, 0xffffffff
lea eax, [ecx + 4]
mov byte [ecx + 3], bl
mov ecx, eax
add esi, 0xfffffffc
jne 0x431d20
pop esi
pop edi
pop ebx
ret
add byte [ecx - 0x7972d7ba], cl
mov byte [ebx], al
add byte [eax], al
sbb al, 2
add byte [eax], al
cmpsb byte [esi], byte es:[edi]
lodsb al, byte [esi]
add dword [eax], eax
add byte [eax - 0x77], dl
loope 0x432000
mov ds, word [eax]
add al, byte [eax]
add bh, al
add esp, ebx
push esp
inc esp
add byte [eax - 0x77], dl
cmpsb byte [esi], byte es:[edi]
add byte [edx], al
add byte [eax], al
cmpsb byte [esi], byte es:[edi]
clc
add dword [eax], eax
add byte [eax - 0x77], dl
loope 0x432042
mov cs, word [eax + 2]
add byte [eax], al
add byte [eax - 0x77], dl
loope 0x43206e
mov es, word [edx + eax]
inc esp
add al, byte [eax]
add bh, al
add dword [eax], ebx
push ebp
inc esp
add byte [eax - 0x77], dl
cmpsb byte [esi], byte es:[edi]
cmp byte [edx], al
add byte [eax], al
add dword [edx*2 - 0x76afffbc], esp
cmpsb byte [esi], byte es:[edi]
jo 0x43210d
add byte [eax], al
add dword [eax], esi
push ebp
inc esp
add byte [eax - 0x77], dl
cmpsb byte [esi], byte es:[edi]
insb byte es:[edi], dx
add al, byte [eax]
add byte [eax - 0x77], dl
loope 0x4320b0
invalid
add dword [eax], esi
push ecx
inc esp
add byte [ebx + 0x44553c0d], cl
add byte [ecx + 0x2748e], cl
add byte [eax - 0x77], dl
loope 0x4320cb
mov cs, word [eax - 0x38fffffe]
add dword [eax], esi
push ecx
inc esp
add byte [ebx + 0x4455440d], cl
add byte [ecx + 0x2808e], cl
add byte [eax - 0x77], dl
loope 0x4320e6
mov ss, word [eax - 0x38fffffe]
nop
add al, byte [eax]
add bh, al
add dword [eax], esi
push ecx
inc esp
add byte [ebx + 0x44554c0d], cl
add byte [ecx + 0x28c8e], cl
mov word [edx], es
add byte [eax], al
push eax
mov ecx, esp
invalid
mov word [edx], es
add byte [eax], al
mov ds, word [edx + eax + 0x1c70000]
push esp
push ebp
inc esp
pushfd
add al, byte [eax]
add bh, al
add dword [ebp + edx*2 + 0x44], edx
add byte [eax - 0x77], dl
cmpsb byte [esi], byte es:[edi]
xchg esp, eax
add al, byte [eax]
add byte [eax - 0x77], dl
loope 0x432117
mov fs, word [eax - 0x38fffffe]
add dword [eax + 0x55], esp
inc esp
add byte [eax - 0x77], dl
cmpsb byte [esi], byte es:[edi]
cwde
add al, byte [eax]
add byte [eax - 0x77], dl
loope 0x43212d
invalid
add dword [eax], esi
push ecx
inc esp
add byte [ebx + 0x4455780d], cl
add byte [ecx + 0x2a48e], cl
add byte [eax - 0x77], dl
loope 0x43215e
invalid
push ecx
inc esp
add byte [ebx + 0x4455800d], cl
add byte [ecx + 0x2ac8e], cl
add byte [eax - 0x77], dl
loope 0x432179
mov es, eax
add al, byte [eax]
add bh, al
invalid
add dword [eax], esi
push ecx
inc esp
add byte [ebx + 0x4455880d], cl
add byte [ecx + 0x2b88e], cl
add byte [eax - 0x77], dl
loope 0x432194
mov ds, eax
add al, byte [eax]
add bh, al
add dword [eax + 0x50004455], edx
out 0xc7, eax
pop es
add byte [esi + 0x44], dl
add byte [eax - 0x77], dl
add al, 0x50
add al, byte [eax]
add byte [ebx - 0x74f57500], cl
add al, 0x88
mov ecx, dword [0x4454f0]
xor ecx, 0xfdce0ec9
sub eax, ecx
jmp eax
or al, 0xc6
inc esi
lahf
mov byte [esi + 0x68], 5
mov byte [esi + 0x69], 0x91
mov byte [esi + 0x6a], 0xc
mov byte [esi + 0x6b], 0x93
mov byte [esi + 0x6c], 0x74
mov byte [esi + 0x6d], 0x95
mov byte [esi + 0x6e], 0x37
mov byte [esi + 0x6f], 0x97
mov byte [esi + 0x70], 0x68
mov byte [esi + 0x71], 0x89
mov byte [esi + 0x72], 0x17
mov byte [esi + 0x73], 0x8b
mov byte [esi + 0x74], 0x2d
mov byte [esi + 0x75], 0x8d
mov byte [esi + 0x76], 0x12
mov byte [esi + 0x77], 0x8f
mov byte [esi + 0x78], 0x17
mov byte [esi + 0x79], 0x81
mov byte [esi + 0x7a], 0x23
mov byte [esi + 0x7b], 0x83
mov byte [esi + 0x7c], 0x16
mov byte [esi + 0x7d], 0x85
mov byte [esi + 0x7e], 0x23
mov byte [esi + 0x7f], 0x87
mov byte [esi + 0x80], 0xb7
mov byte [esi + 0x81], 0x79
mov byte [esi + 0x82], 0x80
mov byte [esi + 0x83], 0x7b
mov byte [esi + 0x84], 0xa4
mov byte [esi + 0x85], 0x7d
mov byte [esi + 0x86], 0xbd
mov byte [esi + 0x87], 0x7f
mov byte [esi + 0x88], 0xe2
mov byte [esi + 0x89], 0x71
mov byte [esi + 0x8a], 0xfb
mov byte [esi + 0x8b], 0x73
mov byte [esi + 0x8c], 0xe4
mov byte [esi + 0x8d], 0x75
mov byte [esi + 0x8e], 0xe2
mov byte [esi + 0x8f], 0x77
mov byte [esi + 0x90], 0x88
mov byte [esi + 0x91], 0x69
mov byte [esi + 0x92], 0xc8
mov byte [esi + 0x93], 0x6b
mov byte [esi + 0x94], 0xf9
mov byte [esi + 0x95], 0x6d
mov byte [esi + 0x96], 0xf7
mov byte [esi + 0x97], 0x6f
mov byte [esi + 0x98], 0xfc
mov byte [esi + 0x99], 0x61
mov byte [esi + 0x9a], 0xc6
mov byte [esi + 0x9b], 0x63
mov byte [esi + 0x9c], 0x84
mov byte [esi + 0x9d], 0x65
mov byte [esi + 0x9e], 0xf2
mov byte [esi + 0x9f], 0x67
mov byte [esi + 0xa0], 0xc7
mov byte [esi + 0xa1], 0x59
mov byte [esi + 0xa2], 0xba
mov byte [esi + 0xa3], 0x5b
mov byte [esi + 0xa4], 0xf8
mov byte [esi + 0xa5], 0x5d
mov byte [esi + 0xa6], 0xc7
mov byte [esi + 0xa7], 0x5f
mov byte [esi + 0xa8], 0xc3
mov byte [esi + 0xa9], 0x51
mov byte [esi + 0xaa], 0xf3
mov byte [esi + 0xab], 0x53
mov byte [esi + 0xac], 0xf6
mov byte [esi + 0xad], 0x55
mov byte [esi + 0xae], 0xca
mov byte [esi + 0xaf], 0x57
mov byte [esi + 0xb0], 0xed
mov byte [esi + 0xb1], 0x49
mov byte [esi + 0xb2], 0xaa
mov byte [esi + 0xb3], 0x4b
add byte [eax], al
add byte [ebx - 0x3a], cl
invalid
mov ah, 0
add byte [eax], al
add al, bl
add byte [eax], al
add byte [ebx - 0x3a], cl
xchg byte [eax + eax - 0x39280000], dh
add al, bl
mov byte [esi + 0xb5], 0x4d
add al, bl
mov byte [esi + 0xb5], 0x4d
mov byte [esi + 0xb6], 0xd6
mov byte [esi + 0xb7], 0x4f
mov byte [esi + 0xb8], 0xd9
add byte [eax], al
fld st(6)
xchg byte [ecx + 0x41000000], bh
add byte [eax], al
fld st(6)
xchg byte [ecx + 0x41000000], bh
mov byte [esi + 0xba], 0xd1
mov byte [esi + 0xbb], 0x43
mov byte [esi + 0xbc], 0xa4
mov byte [esi + 0xbd], 0x45
mov byte [esi + 0xbe], 0xdb
mov byte [esi + 0xbf], 0x47
mov byte [esi + 0xc0], 0x9d
mov byte [esi + 0xc1], 0x39
mov byte [esi + 0xc2], 0xa9
mov byte [esi + 0xc3], 0x3b
add byte [ebx], bh
add byte [ebx], bh
mov byte [esi + 0xc4], 0xaf
mov byte [esi + 0xc5], 0x3d
mov byte [esi + 0xc6], 0x9f
add byte [edi + 0xc786c6], bl
add byte [eax], al
aas
add byte [edi + 0xc786c6], bl
add byte [eax], al
aas
mov byte [esi + 0xc8], 0x97
mov byte [esi + 0xc9], 0x31
mov byte [esi + 0xca], 0x97
mov byte [esi + 0xcb], 0x33
mov byte [esi + 0xcc], 0xed
mov byte [esi + 0xcd], 0x35
mov byte [esi + 0xce], 0x36
mov byte [esi + 0xcf], 0x37
mov dword [esi + 0xd4], 0
mov dword [esi + 0xd0], 0
mov dword [esi + 0x14], 0
mov eax, dword [esi + 0x14]
cmp eax, 0x90
jae 0x432d49
jmp 0x432ceb
mov eax, dword [esi + 0x14]
mov ecx, dword [esi + 0x14]
movzx ecx, byte [esi + ecx + 0x48]
mov edx, eax
add edx, 0x4f70b7c8
add eax, 0xc8
and eax, ecx
or edx, ecx
sub edx, eax
mov dword [esi + 0x350], edx
mov eax, dword [esi + 0x350]
mov ecx, eax
xor ecx, 0x87
and eax, 7
lea eax, [ecx + eax*2]
inc al
mov ecx, dword [esi + 0x14]
mov byte [esi + ecx + 0x48], al
mov eax, dword [esi + 0x14]
mov ecx, eax
and ecx, 1
xor eax, 1
lea eax, [eax + ecx*2]
mov dword [esi + 0x14], eax
mov eax, dword [esi + 0x14]
cmp eax, 0x90
jb 0x432ceb
jmp 0x432d49
lea eax, [esi + 0x39c]
lea edx, [esi + 0x48]
mov edi, eax
mov ecx, 0x22
xchg esi, edx
rep movsd dword es:[edi], dword [esi]
xchg esi, edx
lea edi, [esi + 0x424]
lea edx, [esi + 0xd0]
xor ecx, ecx
xchg esi, edx
rep movsw word es:[edi], word [esi]
xchg esi, edx
mov word [esi + 0x340], 0x86
mov word [esi + 0x342], 0x88
mov dword [esi + 0x344], eax
mov al, byte [esi + 0x30]
mov byte [esi + 0x44], al
mov byte [esi + 0xd8], 0x47
mov byte [esi + 0xd9], 0xb1
mov byte [esi + 0xda], 0x53
mov byte [esi + 0xdb], 0xb3
mov byte [esi + 0xdc], 0x26
mov byte [esi + 0xdd], 0xb5
mov byte [esi + 0xde], 0x28
mov byte [esi + 0xdf], 0xb7
mov byte [esi + 0xe0], 0x31
mov byte [esi + 0xe1], 0xa9
add byte [eax], al
add byte [ecx + 0xe286c6], ch
add byte [eax], al
xor al, 0xc6
xchg bl, ah
add byte [eax], al
add byte [ebx + 0xe486c6], ch
add byte [eax], al
dec ebx
add byte [eax], al
add byte [ecx + 0xe286c6], ch
add byte [eax], al
xor al, 0xc6
xchg bl, ah
add byte [eax], al
add byte [ebx + 0xe486c6], ch
add byte [eax], al
dec ebx
mov byte [esi + 0xe5], 0xad
mov byte [esi + 0xe6], 0xae
mov byte [esi + 0xe7], 0xaf
mov dword [esi + 0xeb], 0
mov dword [esi + 0xe8], 0
mov dword [esi + 0x18], 0
mov eax, dword [esi + 0x18]
cmp eax, 0x17
jae 0x432e7e
jmp 0x432e27
mov eax, dword [esi + 0x18]
mov ecx, dword [esi + 0x18]
movzx ecx, byte [esi + ecx + 0xd8]
mov edx, eax
add edx, 0x4dde2568
lea eax, [eax + ecx + 0x4dde2568]
and edx, ecx
add edx, edx
sub eax, edx
mov dword [esi + 0x354], eax
mov eax, dword [esi + 0x354]
mov ecx, eax
xor ecx, 0x27
and eax, 0x27
lea eax, [ecx + eax*2]
inc al
mov ecx, dword [esi + 0x18]
mov byte [esi + ecx + 0xd8], al
mov eax, dword [esi + 0x18]
inc eax
mov dword [esi + 0x18], eax
mov eax, dword [esi + 0x18]
cmp eax, 0x17
jb 0x432e27
jmp 0x432e7e
lea eax, [esi + 0x378]
lea edx, [esi + 0xd8]
mov edi, eax
mov ecx, 4
xchg esi, edx
rep movsd dword es:[edi], dword [esi]
xchg esi, edx
lea edi, [esi + 0x388]
lea edx, [esi + 0xe8]
xor ecx, ecx
xchg esi, edx
rep movsw word es:[edi], word [esi]
xchg esi, edx
mov word [esi + 0x338], 0xe
mov word [esi + 0x33a], 0x10
mov dword [esi + 0x33c], eax
lea eax, [esi + 0x340]
mov dword [esi + 0x364], eax
lea eax, [esi + 0x338]
mov dword [esi + 0x368], eax
mov dword [esi + 0x36c], 0x34
lea eax, [esi + 0x364]
mov byte [esi + 0xf8], 0x17
mov byte [esi + 0xf9], 0x10
mov byte [esi + 0xfa], 0x11
mov byte [esi + 0xfb], 0x12
mov dword [esi + 0x104], 0
mov dword [esi + 0x100], 0
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
mov dword [esi + 0xfc], 0
mov dword [esi + 0x1c], 0
mov ecx, dword [esi + 0x1c]
cmp ecx, 0x10
jae 0x432f82
jmp 0x432f37
mov ecx, dword [esi + 0x1c]
mov edx, dword [esi + 0x1c]
movzx edx, byte [esi + edx + 0xf8]
mov edi, ecx
add edi, 3
add ecx, edx
and edi, edx
add edi, edi
sub ecx, edi
add ecx, 0xd110b503
mov dword [esi + 0x358], ecx
mov ecx, dword [esi + 0x358]
add cl, 0xeb
mov edx, dword [esi + 0x1c]
mov byte [esi + edx + 0xf8], cl
mov ecx, dword [esi + 0x1c]
inc ecx
mov dword [esi + 0x1c], ecx
mov ecx, dword [esi + 0x1c]
cmp ecx, 0x10
jb 0x432f37
jmp 0x432f82
mov ecx, dword [esi + 0xf8]
mov edx, dword [0x4488f4]
cmp edx, 0
je 0x433011
mov edi, dword [0x4488f8]
xor ebx, ebx
cmp dword [edi + ebx*8], 0x5cefe095
jne 0x432fb1
mov edx, dword [edi + ebx*8 + 4]
cmp edx, ecx
mov ebx, dword [esi + 4]
je 0x433011
jmp 0x432fba
add ebx, 1
cmp ebx, edx
je 0x43300c
jmp 0x432f9b
mov ecx, dword [0x4488fc]
xor edi, edi
lea edi, [esi + 0x334]
sub esp, 0x24
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], 6
mov dword [esp + 0xc], 0x50000018
mov dword [esp + 0x10], 3
mov dword [esp + 0x14], 3
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], 0
mov dword [esp + 0x20], edi
call fcn.00437c10
add esp, 0x24
jmp 0x433011
mov ebx, dword [esi + 4]
jmp 0x433011
mov ecx, dword [esi + 0x334]
xor eax, eax
sub ecx, 8
setne cl
mov edi, dword [esi + 0x270]
mov dword [edi], 0
mov edx, dword [esi + 0x284]
mov edx, dword [edx]
mov edi, dword [edi]
mov edx, dword [edx + edi*4]
mov edi, dword [0x44552c]
xor edi, 0x55a07c56
sub edx, edi
jmp edx
adc byte [ecx], al
add byte [eax], al
add byte [ebx + 0x17c8e], cl
add byte [ecx - 0x4e7c4d0f], al
mov eax, dword es:[esi + 0x188]
mov eax, dword [eax]
mov eax, dword [eax + ecx*4]
mov ecx, dword [0x4453ec]
xor ecx, 0x60ab5f1b
sub eax, ecx
mov ebx, dword [esi + 4]
jmp eax
mov dword [edx], ecx
mov eax, dword [esi + 0x1cc]
mov eax, dword [eax]
mov ecx, dword [edx]
mov eax, dword [eax + ecx*4]
mov ecx, dword [0x44543c]
xor ecx, 0xba95b797
sub eax, ecx
jmp eax
add eax, 8
mov ecx, dword [esi + 0x38]
mov edx, dword [esi + 0x28]
add ecx, dword [edx + 4]
add ecx, 8
mov edx, 0x14
cmp edx, 0
je 0x4333dd
add edx, 0xffffffff
mov edi, eax
add edi, 1
mov dword [esi + 0x12c], edi
mov edi, ecx
add edi, 1
mov bl, byte [eax]
mov bh, byte [ecx]
cmp bh, bl
mov ecx, edi
mov eax, dword [esi + 0x12c]
je 0x43339c
movzx eax, bh
movzx ecx, bl
mov edx, eax
xor edx, ecx
xor ecx, 0xffffffff
jmp dword [ecx]
enter 0xffffffffffffe0c1, 1
sub eax, edx
mov ebx, dword [esi + 4]
jmp 0x4333e4
jmp dword [ecx]
xor eax, eax
mov ebx, dword [esi + 4]
jmp 0x4333e4
xor ecx, ecx
test eax, eax
sete al
mov edi, dword [esi + 0x23c]
mov dword [edi], 1
mov edx, dword [esi + 0x248]
mov edx, dword [edx]
mov edi, dword [edi]
mov edx, dword [edx + edi*4]
mov edi, dword [0x445508]
xor edi, 0xe31b4ce4
sub edx, edi
cli
cli
jmp edx
int1
aad 0x1b
sar byte [esi], 0x29
enter 0xffffffffffffe0ff, 0xffffffffffffffe8
fldenv [ebx - 3]
dec dword [edx + 0x3c70346]
add dword [eax], eax
add byte [eax], al
mov ecx, dword [edi]
mov edx, dword [ebx]
mov ecx, dword [ecx + edx*4]
mov edx, dword [0x445608]
xor edx, 0xd5b461ec
sub ecx, edx
jmp ecx
je 0x43368d
mov edi, dword [0x4488f8]
xor ebx, ebx
cmp dword [edi + ebx*8], 0x11081610
jne 0x433656
mov edx, dword [edi + ebx*8 + 4]
cmp edx, ecx
mov edi, dword [esi + 0xc]
mov ebx, dword [esi + 4]
je 0x43368d
jmp 0x43365f
add ebx, 1
cmp ebx, edx
je 0x433685
jmp 0x43363d
mov ecx, dword [0x4488fc]
sub esp, 0x10
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], 1
mov dword [esp + 0xc], eax
call fcn.00437c10
add esp, 0x10
jmp 0x43368d
mov edi, dword [esi + 0xc]
mov ebx, dword [esi + 4]
jmp 0x43368d
mov al, byte [esi + 0xb]
mov byte [esi + 3], al
mov dword [esi + 0x10], 1
mov ecx, dword [esi + 0x308]
mov dword [ecx], 1
mov eax, dword [esi + 0x310]
mov eax, dword [eax]
mov ecx, dword [ecx]
mov eax, dword [eax + ecx*4]
mov ecx, dword [0x4455d0]
xor ecx, 0x670d59c3
sub eax, ecx
jmp eax
sub byte [esi + 0x44], dl
inc esp
add byte [ecx + 0x268d45f1], al
int 0x29
enter 0xffffffffffffe0ff, 0xffffffffffffff8b
invalid
and ecx, 0x3c
xor dword [esp + ecx + 0x1c], eax
mov esi, dword [esp + 0x78]
mov eax, ebp
or eax, 0x38
mov ecx, ebp
xor ecx, 0xffffffc0
and ecx, eax
cmp ecx, 0x37
jbe 0x433c03
lea edi, [esp + 0x1c]
lea eax, [esp + 4]
push edi
push eax
call fcn.004346b0
add esp, 8
xor eax, eax
mov ecx, 0x10
rep stosd dword es:[edi], eax
lea edi, [esp + 0x5c]
xor eax, eax
xor ecx, ecx
rep stosw word es:[edi], ax
mov dword [esp + 0x54], ebx
shr ebp, 0x1d
mov dword [esp + 0x58], ebp
lea eax, [esp + 0x1c]
lea ecx, [esp + 4]
push eax
push ecx
call fcn.004346b0
add esp, 8
mov eax, dword [esp + 4]
mov dword [esi], eax
mov eax, dword [esp + 8]
mov dword [esi + 4], eax
mov eax, dword [esp + 0xc]
mov dword [esi + 8], eax
mov eax, dword [esp + 0x10]
mov dword [esi + 0xc], eax
mov eax, dword [esp + 0x14]
mov dword [esi + 0x10], eax
add esp, 0x5c
pop esi
pop edi
pop ebx
pop ebp
ret
push eax
push ecx
push 5
push dword [0x4488fc]
push edx
call fcn.00437c10
add esp, 0x20
not eax
shr eax, 0x1f
xor ebx, ebx
mov dword [esp + 0x1c], 0
jmp dword [eax*4 + 0x445848]
xor byte [ecx], al
add byte [eax], al
lea edi, [esp + 8]
mov dword [esp + 0x1c], 0
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [0x44585c]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp eax