Function at 0x40c8ef
Capabilities:
Encode data using xor
Resolve function by parsing pe exports

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x448
mov eax, dword [0x442c1c]
mov dword [esp + 0x48], 0x8f3d8955
mov dword [esp + 0x4c], 0x833b8d02
mov dword [esp + 0x50], 0x873a813c
mov dword [esp + 0x54], 0x9b698525
mov dword [esp + 0x58], 0x9f6c996d
mov dword [esp + 0x5c], 0x93729d6c
mov dword [esp + 0x60], 0x973d9168
mov dword [esp + 0x64], 0x6bd8952d
mov dword [esp + 0x68], 0x6fdd69cc
mov dword [esp + 0x6c], 0x63d56de7
mov dword [esp + 0x70], 0x67b46180
mov dword [esp + 0x74], 0x7b9a65b0
mov dword [esp + 0x78], 0x7f8e7989
mov dword [esp + 0x7c], 0x73827d8e
mov dword [esp + 0x80], 0x779671bf
mov dword [esp + 0x84], 0x4bf375df
mov dword [esp + 0x88], 0x4f8449fa
mov dword [esp + 0x8c], 0x438d4db8
mov dword [esp + 0x90], 0x47ce41a0
mov dword [esp + 0x94], 0x5bae458e
mov dword [esp + 0x98], 0x5fbe59a1
mov dword [esp + 0x9c], 0x53e25d9d
mov dword [esp + 0xa0], 0x57ea51e0
mov dword [esp + 0xa4], 0x2b8155f1
mov dword [esp + 0xa8], 0x2f88298d
mov dword [esp + 0xac], 0x239b2df3
mov dword [esp + 0xb0], 0x27d52194
mov dword [esp + 0xb4], 0x3bcd25d1
mov dword [esp + 0xb8], 0x3fcc39f3
mov dword [esp + 0xbc], 0x33f83dcb
mov dword [esp + 0xc0], 0x37ce31d0
mov dword [esp + 0xc4], 0xbd235eb
mov dword [esp + 0xc8], 0xfd309dc
mov dword [esp + 0xcc], 0x3fe0dd0
mov dword [esp + 0xd0], 0x7ba01e0
mov dword [esp + 0xd4], 0x1ba505bd
mov dword [esp + 0xd8], 0x1ffe19bd
mov dword [esp + 0xdc], 0x13b71dc7
mov dword [esp + 0xe0], 0x17a911b7
mov dword [esp + 0xe4], 0xeb1315a7
mov dword [esp + 0xe8], 0xef29e908
mov dword [esp + 0xec], 0xe354ed54
mov dword [esp + 0xf0], 0xe75be153
mov dword [esp + 0xf4], 0xfb09e541
mov dword [esp + 0xf8], 0xff0ff909
mov dword [esp + 0xfc], 0xf300fd35
mov dword [esp + 0x100], 0xf704f100
mov dword [esp + 0x104], 0xcb38f504
mov dword [esp + 0x108], 0xcf2ec938
mov dword [esp + 0x10c], 0xc363cd1b
mov dword [esp + 0x110], 0xc767c17a
mov dword [esp + 0x114], 0xdb63c572
mov dword [esp + 0x118], 0xdf2bd92b
mov dword [esp + 0x11c], 0xd319dd2b
mov dword [esp + 0x120], 0xd721d122
mov dword [esp + 0x124], 0xabaad51e
mov byte [esp + 0x128], 0
mov dword [esp], 0
mov ecx, dword [esp]
cmp ecx, 0xe0
ja 0x40c2e3
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [esp]
mov edx, dword [esp]
movzx edx, byte [esp + edx + 0x48]
add ecx, 0xf132662
xor ecx, edx
mov dword [esp + 0x10], ecx
mov ecx, dword [esp + 0x10]
add cl, 0x16
mov edx, dword [esp]
mov byte [esp + edx + 0x48], cl
inc dword [esp]
mov ecx, dword [esp]
cmp ecx, 0xe1
jb 0x40c2b0
mov edi, dword [esp + 0x474]
mov ebp, dword [esp + 0x470]
lea ebx, [esp + 0x48]
push 0
push 0
push 0
push 0
push ebx
call eax
mov esi, eax
xor eax, eax
test esi, esi
setne al
jmp dword [eax*4 + 0x43dc48]
xor ebx, ebx
xor eax, eax
test ebp, ebp
setne al
mov ecx, ebp
xor ebp, ebp
jmp dword [eax*4 + 0x43dcf8]
mov dword [ecx], ebx
xor eax, eax
test edi, edi
setne al
jmp dword [eax*4 + 0x43dd08]
mov dword [edi], ebp
jmp dword [0x43dd18]
test ebx, ebx
setne al
add esp, 0x448
pop esi
pop edi
pop ebx
pop ebp
ret
mov ebp, dword [esp + 0x45c]
jmp dword [0x43dc50]
mov eax, dword [0x442c20]
mov dword [esp], 0xc1c6c481
mov dword [esp + 0x10], 0
mov ecx, dword [esp + 0x10]
cmp ecx, 3
ja 0x40c3c3
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x10]
movzx edx, byte [esp + edx]
add ecx, 0xc0cf0731
xor ecx, edx
mov dword [esp + 0x48], ecx
mov ecx, dword [esp + 0x48]
add cl, 0xb
mov edx, dword [esp + 0x10]
mov byte [esp + edx], cl
inc dword [esp + 0x10]
mov ecx, dword [esp + 0x10]
cmp ecx, 4
jb 0x40c390
movzx ecx, word [esp]
push 0
push ecx
push ebp
push esi
call eax
jmp case.0x40c309.2
movzx ecx, word [esp]
push 0
push ecx
push ebp
push esi
call eax
jmp dword [0x43dc58]
mov eax, dword [0x442c20]
mov dword [esp], 0xc1c6c481
mov dword [esp + 0x10], 0
mov ecx, dword [esp + 0x10]
cmp ecx, 3
ja 0x40c3d0
nop
nop
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x10]
movzx edx, byte [esp + edx]
add ecx, 0xc0cf0731
xor ecx, edx
mov dword [esp + 0x48], ecx
mov ecx, dword [esp + 0x48]
add cl, 0xb
mov edx, dword [esp + 0x10]
mov byte [esp + edx], cl
inc dword [esp + 0x10]
mov ecx, dword [esp + 0x10]
cmp ecx, 4
jb 0x40c400
jmp 0x40c3d0
xor ecx, ecx
test eax, eax
setne cl
jmp dword [ecx*4 + 0x43dc60]
xor ebp, ebp
xor ebx, ebx
jmp 0x40c6e9
mov ecx, dword [0x442c24]
mov dword [esp + 4], ecx
mov dword [esp + 0x10], 0x93129190
mov byte [esp + 0x14], 0
mov dword [esp], 0
mov edx, dword [esp]
cmp edx, 4
ja 0x40c4b0
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov edx, dword [esp]
mov ebp, dword [esp]
movzx ebp, byte [esp + ebp + 0x10]
add edx, 0x4a68c29c
xor edx, ebp
mov dword [esp + 0x48], edx
mov edx, dword [esp + 0x48]
add dl, 0xf4
mov ebp, dword [esp]
mov byte [esp + ebp + 0x10], dl
inc dword [esp]
mov edx, dword [esp]
cmp edx, 5
jb 0x40c480
mov edx, dword [esp + 0x10]
mov dword [esp + 0x48], 0xe137e734
mov dword [esp + 0x4c], 0xfd0ee30d
mov word [esp + 0x50], 0xfffc
mov dword [esp + 0x52], 0
mov dword [esp + 8], 0
mov ebp, dword [esp + 8]
cmp ebp, 0xd
ja 0x40c523
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ebp, dword [esp + 8]
mov edi, dword [esp + 8]
movzx edi, byte [esp + edi + 0x48]
add ebp, 0xd8ca5729
xor ebp, edi
mov dword [esp], ebp
mov ecx, dword [esp]
add cl, 0x33
mov edi, dword [esp + 8]
mov byte [esp + edi + 0x48], cl
inc dword [esp + 8]
mov ecx, dword [esp + 8]
cmp ecx, 0xe
jb 0x40c4f0
push edx
push 0
push 0
push 0
push dword [esp + 0x470]
push ebx
mov dword [esp + 0x5c], eax
push eax
call dword [esp + 0x20]
xor ecx, ecx
mov dword [esp + 0xc], eax
test eax, eax
setne cl
jmp dword [ecx*4 + 0x43dc68]
xor ebp, ebp
xor ebx, ebx
mov edi, dword [esp + 0x474]
jmp 0x40c6df
movzx eax, byte [0x442d54]
mov edi, dword [esp + 0x474]
jmp dword [eax*4 + 0x43dc70]
mov dword [esp + 0x10], 0x37453967
mov dword [esp + 0x14], 0x33453547
mov dword [esp + 0x18], 0x4f333149
mov dword [esp + 0x1c], 0x4b6a4d0a
mov dword [esp + 0x20], 0x4725492b
mov dword [esp + 0x24], 0x4338453b
mov dword [esp + 0x28], 0x5f2b4123
mov dword [esp + 0x2c], 0x5b395dd7
mov dword [esp + 0x30], 0x57df5926
mov dword [esp + 0x34], 0x53175524
mov word [esp + 0x38], 0x5150
mov dword [esp + 0x3a], 0
mov byte [esp + 0x3e], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0x2e
ja 0x40c61e
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp]
mov ecx, dword [esp]
movzx ecx, byte [esp + ecx + 0x10]
add eax, 0xa07ae036
xor eax, ecx
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0x48]
add al, 0xf2
mov ecx, dword [esp]
mov byte [esp + ecx + 0x10], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0x2f
jb 0x40c5f0
movzx eax, word [esp + 0x10]
test ax, ax
je 0x40c641
lea ebx, [esp + 0x48]
lea ecx, [esp + 0x12]
mov word [ebx], ax
add ebx, 2
movzx eax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40c630
mov word [ebx], 0
movzx eax, word [0x442d56]
test ax, ax
je 0x40c675
xor ecx, ecx
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [ebx + ecx], ax
movzx eax, word [ecx + 0x442d58]
add ecx, 2
test ax, ax
jne 0x40c660
add ebx, ecx
mov word [ebx], 0
lea eax, [esp + 0x48]
push 0x20000000
push 0xffffffffffffffff
push eax
push dword [esp + 0x18]
call dword [0x442c30]
xor ebp, ebp
mov ecx, dword [esp + 0x464]
mov eax, ecx
neg eax
mov eax, 0
sbb eax, eax
push 0
mov edx, dword [esp + 0x470]
push edx
push edx
push dword [esp + 0x474]
push eax
push ecx
mov ebx, dword [esp + 0x24]
push ebx
call dword [0x442c34]
xor ecx, ecx
test eax, eax
setne cl
mov dword [esp + 4], 0
jmp dword [ecx*4 + 0x43dc78]
jmp dword [0x43dc80]
push dword [esp + 0x44]
call dword [0x442c48]
push esi
call dword [0x442c48]
xor eax, eax
mov ecx, dword [esp + 0x470]
test ecx, ecx
setne al
jmp dword [eax*4 + 0x43dcf8]
xor eax, eax
test ebx, ebx
setne al
jmp dword [eax*4 + 0x43dd00]
xor eax, eax
test edi, edi
setne al
jmp dword [eax*4 + 0x43dd08]
push ebx
call fcn.004340c0
add esp, 4
xor eax, eax
test edi, edi
setne al
jmp dword [eax*4 + 0x43dd08]
add ebp, dword [esp + 0x10]
mov dword [esp + 4], ebx
mov ebx, edi
xor eax, eax
jmp dword [eax*4 + 0x43dcd8]
lea eax, [esp + 0x48]
push eax
push ebx
call dword [0x442c3c]
test eax, eax
setne al
mov edi, dword [esp + 0x48]
test edi, edi
setne cl
and cl, al
movzx eax, cl
jmp dword [eax*4 + 0x43dc98]
mov esi, dword [esp + 4]
jmp dword [0x43dca0]
mov ebx, dword [esp + 0xc]
mov esi, dword [esp + 0x40]
mov eax, 1
jmp dword [eax*4 + 0x43dcd8]
jmp dword [0x43dcc0]
mov dword [esp + 0x10], 0
lea eax, [ebx + ebp]
lea ecx, [esp + 0x10]
push ecx
push dword [esp + 0x4c]
push eax
push edi
call dword [0x442c40]
mov dword [esp + 0x10], 0
lea eax, [ebx + ebp]
lea ecx, [esp + 0x10]
push ecx
push dword [esp + 0x4c]
push eax
push edi
call dword [0x442c40]
jmp dword [0x43dcd4]
mov ebx, eax
xor eax, eax
test ebx, ebx
sete al
jmp dword [eax*4 + 0x43dcb0]
mov edi, dword [esp + 0xc]
mov esi, dword [esp + 0x40]
jmp dword [0x43dcc8]
lea eax, [edi + ebp]
inc eax
push eax
push esi
call fcn.00436270
add esp, 8
lea eax, [edi + ebp]
inc eax
push eax
push esi
call fcn.00436270
add esp, 8
jmp dword [0x43dcac]
xor eax, eax
mov ecx, dword [esp + 4]
test ecx, ecx
setne al
mov edi, dword [esp + 0x474]
jmp dword [eax*4 + 0x43dce0]
jmp dword [0x43dcec]
mov byte [ecx + ebp], 0
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [ecx + ebp], 0
jmp dword [0x43dcf0]
jmp case.0x40c546.4
push 0
push ebx
call dword [0x442c38]
push 0
push ebx
call dword [0x442c38]
jmp dword [0x43dc88]
xor ecx, ecx
test eax, eax
setne cl
xor ebp, ebp
mov dword [esp + 4], 0
jmp dword [ecx*4 + 0x43dc90]
push ebx
call dword [0x442c48]
mov ebx, dword [esp + 4]
jmp 0x40c6df
mov dword [esp + 0x48], 0
xor ebp, ebp
mov dword [esp + 4], 0
mov dword [esp + 0x40], esi
jmp case.0x40c309.36
push eax
sub esp, 0xe0
mov eax, esp
mov ecx, dword [0x442c1c]
mov dword [eax], 0xc95bcbbf
mov dword [eax + 4], 0xc551c74e
mov dword [eax + 8], 0xc156c350
mov dword [eax + 0xc], 0xfdafff5f
mov dword [eax + 0x10], 0xf9a8fbb7
mov dword [eax + 0x14], 0xf5d6f7a8
mov dword [eax + 0x18], 0xf19bf3ac
mov dword [eax + 0x1c], 0xed7cef67
mov dword [eax + 0x20], 0xe97beb70
mov dword [eax + 0x24], 0xe56be761
mov dword [eax + 0x28], 0xe190e3c4
mov dword [eax + 0x2c], 0x1d3e1f8c
mov dword [eax + 0x30], 0x194a1b53
mov dword [eax + 0x34], 0x1546174a
mov dword [eax + 0x38], 0x11321351
mov dword [eax + 0x3c], 0xd990f79
mov dword [eax + 0x40], 0x9400b9e
mov dword [eax + 0x44], 0x5430744
mov dword [eax + 0x48], 0x18a0324
mov dword [eax + 0x4c], 0x3d723f4a
mov dword [eax + 0x50], 0x391a3b6b
mov dword [eax + 0x54], 0x35a63747
mov dword [eax + 0x58], 0x31a633a4
mov dword [eax + 0x5c], 0x2d472fab
mov dword [eax + 0x60], 0x29b42bb7
mov dword [eax + 0x64], 0x25b1275d
mov dword [eax + 0x68], 0x217323a8
mov dword [eax + 0x6c], 0x5d135f6b
mov dword [eax + 0x70], 0x59085b15
mov dword [eax + 0x74], 0x551c5715
mov dword [eax + 0x78], 0x510a5374
mov dword [eax + 0x7c], 0x4d364f25
mov dword [eax + 0x80], 0x49394b20
mov dword [eax + 0x84], 0x4512473c
mov dword [eax + 0x88], 0x41d64364
mov dword [eax + 0x8c], 0x7deb7fd7
mov dword [eax + 0x90], 0x795a7be7
mov dword [eax + 0x94], 0x75ed7701
mov dword [eax + 0x98], 0x71e773e9
mov dword [eax + 0x9c], 0x6d396fe1
mov dword [eax + 0xa0], 0x69176b4c
mov dword [eax + 0xa4], 0x65e867f0
mov dword [eax + 0xa8], 0x61f163f5
mov dword [eax + 0xac], 0x9dcf9ffb
mov dword [eax + 0xb0], 0x99d59bd3
mov dword [eax + 0xb4], 0x95c497df
mov dword [eax + 0xb8], 0x91c093c4
mov dword [eax + 0xbc], 0x8ddc8fc0
mov dword [eax + 0xc0], 0x89aa8bdc
mov dword [eax + 0xc4], 0x851987e5
mov dword [eax + 0xc8], 0x811d831e
mov dword [eax + 0xcc], 0xbd29bf0e
mov dword [eax + 0xd0], 0xb9f1bbed
mov dword [eax + 0xd4], 0xb5ffb7f5
mov dword [eax + 0xd8], 0xb1ffb3e6
mov dword [eax + 0xdc], 0xadaeaffa
mov byte [eax + 0xe2], 0
mov word [eax + 0xe0], 0
mov dword [ebp - 0x10], 0
mov edx, dword [ebp - 0x10]
cmp edx, 0xe2
ja 0x40cb1f
nop
mov edx, dword [ebp - 0x10]
mov esi, dword [ebp - 0x10]
movzx esi, byte [eax + esi]
add edx, 0x49d162d3
xor edx, esi
mov dword [ebp - 0x14], edx
mov edx, dword [ebp - 0x14]
add dl, 0xe1
mov esi, dword [ebp - 0x10]
mov byte [eax + esi], dl
inc dword [ebp - 0x10]
mov edx, dword [ebp - 0x10]
cmp edx, 0xe3
jb 0x40caf0
push 0
push 0
push 0
push 0
push eax
call ecx
jmp case.0x40c309.59
push 0
push 0
push 0
push 0
push eax
call ecx
jmp dword [0x43dd38]
push eax
sub esp, 0xe0
mov eax, esp
sub esp, 8
mov ebx, esp
sub esp, 8
mov edi, esp
sub esp, 0xc
mov dword [ebp - 0x18], esp
sub esp, 0x200
mov dword [ebp - 0x20], esp
sub esp, 0x30
mov dword [ebp - 0x28], esp
sub esp, 8
mov dword [ebp - 0x1c], esp
push eax
mov dword [ebp - 0x2c], esp
mov ecx, dword [0x442c1c]
mov dword [eax], 0xc95bcbbf
mov dword [eax + 4], 0xc551c74e
mov dword [eax + 8], 0xc156c350
mov dword [eax + 0xc], 0xfdafff5f
mov dword [eax + 0x10], 0xf9a8fbb7
mov dword [eax + 0x14], 0xf5d6f7a8
mov dword [eax + 0x18], 0xf19bf3ac
mov dword [eax + 0x1c], 0xed7cef67
mov dword [eax + 0x20], 0xe97beb70
mov dword [eax + 0x24], 0xe56be761
mov dword [eax + 0x28], 0xe190e3c4
mov dword [eax + 0x2c], 0x1d3e1f8c
mov dword [eax + 0x30], 0x194a1b53
mov dword [eax + 0x34], 0x1546174a
mov dword [eax + 0x38], 0x11321351
mov dword [eax + 0x3c], 0xd990f79
mov dword [eax + 0x40], 0x9400b9e
mov dword [eax + 0x44], 0x5430744
mov dword [eax + 0x48], 0x18a0324
mov dword [eax + 0x4c], 0x3d723f4a
mov dword [eax + 0x50], 0x391a3b6b
mov dword [eax + 0x54], 0x35a63747
mov dword [eax + 0x58], 0x31a633a4
mov dword [eax + 0x5c], 0x2d472fab
mov dword [eax + 0x60], 0x29b42bb7
mov dword [eax + 0x64], 0x25b1275d
mov dword [eax + 0x68], 0x217323a8
mov dword [eax + 0x6c], 0x5d135f6b
mov dword [eax + 0x70], 0x59085b15
mov dword [eax + 0x74], 0x551c5715
mov dword [eax + 0x78], 0x510a5374
mov dword [eax + 0x7c], 0x4d364f25
mov dword [eax + 0x80], 0x49394b20
mov dword [eax + 0x84], 0x4512473c
mov dword [eax + 0x88], 0x41d64364
mov dword [eax + 0x8c], 0x7deb7fd7
mov dword [eax + 0x90], 0x795a7be7
mov dword [eax + 0x94], 0x75ed7701
mov dword [eax + 0x98], 0x71e773e9
mov dword [eax + 0x9c], 0x6d396fe1
mov dword [eax + 0xa0], 0x69176b4c
mov dword [eax + 0xa4], 0x65e867f0
mov dword [eax + 0xa8], 0x61f163f5
mov dword [eax + 0xac], 0x9dcf9ffb
mov dword [eax + 0xb0], 0x99d59bd3
mov dword [eax + 0xb4], 0x95c497df
mov dword [eax + 0xb8], 0x91c093c4
mov dword [eax + 0xbc], 0x8ddc8fc0
mov dword [eax + 0xc0], 0x89aa8bdc
mov dword [eax + 0xc4], 0x851987e5
mov dword [eax + 0xc8], 0x811d831e
mov dword [eax + 0xcc], 0xbd29bf0e
mov dword [eax + 0xd0], 0xb9f1bbed
mov dword [eax + 0xd4], 0xb5ffb7f5
mov dword [eax + 0xd8], 0xb1ffb3e6
mov dword [eax + 0xdc], 0xadaeaffa
mov byte [eax + 0xe2], 0
mov word [eax + 0xe0], 0
mov dword [ebp - 0x10], 0
mov edx, dword [ebp - 0x10]
cmp edx, 0xe2
ja 0x40cb30
nop
nop
mov edx, dword [ebp - 0x10]
mov esi, dword [ebp - 0x10]
movzx esi, byte [eax + esi]
add edx, 0x49d162d3
xor edx, esi
mov dword [ebp - 0x14], edx
mov edx, dword [ebp - 0x14]
add dl, 0xe1
mov esi, dword [ebp - 0x10]
mov byte [eax + esi], dl
inc dword [ebp - 0x10]
mov edx, dword [ebp - 0x10]
cmp edx, 0xe3
jb 0x40cd70
jmp 0x40cb30
mov esi, eax
xor eax, eax
test esi, esi
setne al
jmp dword [eax*4 + 0x43dd40]
xor ebx, ebx
jmp 0x40cdbe
jmp dword [0x43dd48]
mov eax, ebx
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov eax, dword [0x442c20]
mov dword [ebx], 0xcfcec887
mov byte [ebx + 4], 0
mov dword [ebp - 0x10], 0
mov ecx, dword [ebp - 0x10]
cmp ecx, 4
ja 0x40ce1c
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [ebp - 0x10]
mov edx, dword [ebp - 0x10]
movzx edx, byte [ebx + edx]
add ecx, 0xbdf2de32
xor ecx, edx
mov dword [ebp - 0x14], ecx
mov ecx, dword [ebp - 0x14]
add cl, 6
mov edx, dword [ebp - 0x10]
mov byte [ebx + edx], cl
inc dword [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
cmp ecx, 5
jb 0x40cdf0
movzx ecx, word [ebx]
push 0
push ecx
push 0x442c50
push esi
call eax
mov eax, dword [0x442c20]
mov dword [ebx], 0xcfcec887
mov byte [ebx + 4], 0
mov dword [ebp - 0x10], 0
mov ecx, dword [ebp - 0x10]
cmp ecx, 4
ja 0x40ce7c
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [ebp - 0x10]
mov edx, dword [ebp - 0x10]
movzx edx, byte [ebx + edx]
add ecx, 0xbdf2de32
xor ecx, edx
mov dword [ebp - 0x14], ecx
mov ecx, dword [ebp - 0x14]
add cl, 6
mov edx, dword [ebp - 0x10]
mov byte [ebx + edx], cl
inc dword [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
cmp ecx, 5
jb 0x40ce50
movzx ecx, word [ebx]
push 0
push ecx
push 0x442c50
push esi
call eax
jmp dword [0x43dd50]
xor ecx, ecx
test eax, eax
setne cl
jmp dword [ecx*4 + 0x43dd58]
xor ebx, ebx
jmp 0x40d206
mov ecx, dword [0x442c24]
mov dword [ebp - 0x24], ecx
mov dword [edi], 0x61e66764
mov dword [edi + 4], 0
mov dword [ebp - 0x10], 0
mov edx, dword [ebp - 0x10]
cmp edx, 7
ja 0x40cefc
nop
nop
nop
nop
nop
nop
mov edx, dword [ebp - 0x10]
mov ebx, dword [ebp - 0x10]
movzx ebx, byte [edi + ebx]
add edx, 0xa2f9f799
xor edx, ebx
mov dword [ebp - 0x14], edx
mov edx, dword [ebp - 0x14]
add dl, 3
mov ebx, dword [ebp - 0x10]
mov byte [edi + ebx], dl
inc dword [ebp - 0x10]
mov edx, dword [ebp - 0x10]
cmp edx, 8
jb 0x40ced0
mov edx, dword [edi]
mov ebx, dword [ebp - 0x18]
mov dword [ebx], 0x4fbd49b8
mov dword [ebx + 4], 0x43b64dbb
mov dword [ebx + 8], 0x4140
mov dword [ebp - 0x10], 0
mov edi, dword [ebp - 0x10]
cmp edi, 0xb
ja 0x40cf65
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov edi, dword [ebp - 0x10]
mov ebx, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x18]
movzx ebx, byte [ecx + ebx]
add edi, 0x10b92
xor edi, ebx
mov dword [ebp - 0x14], edi
mov ebx, dword [ebp - 0x14]
add bl, 0x26
mov edi, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x18]
mov byte [ecx + edi], bl
mov ebx, dword [ebp - 0x18]
inc dword [ebp - 0x10]
mov edi, dword [ebp - 0x10]
cmp edi, 0xc
jb 0x40cf30
push edx
push 0
push 0
push 0
push dword [ebp + 8]
push ebx
mov dword [ebp - 0x18], eax
push eax
call dword [ebp - 0x24]
xor ecx, ecx
test eax, eax
setne cl
xor ebx, ebx
jmp dword [ecx*4 + 0x43dd60]
mov edi, eax
xor eax, eax
mov ecx, dword [ebp + 0x20]
test ecx, ecx
setg al
jmp dword [eax*4 + 0x43dd68]
push ecx
push ecx
push ecx
push ecx
push edi
call dword [0x442c2c]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp dword [0x43dd78]
movzx eax, byte [0x442d54]
jmp dword [eax*4 + 0x43dd80]
mov ebx, dword [ebp - 0x28]
mov dword [ebx], 0xc157c709
mov dword [ebx + 4], 0xcd57c351
mov dword [ebx + 8], 0xc961cf67
mov dword [ebx + 0xc], 0xb52acb12
mov dword [ebx + 0x10], 0xb117b715
mov dword [ebx + 0x14], 0xbd1cb31d
mov dword [ebx + 0x18], 0xb929bf1d
mov dword [ebx + 0x1c], 0xa51bbb21
mov dword [ebx + 0x20], 0xa13da706
mov dword [ebx + 0x24], 0xad65a330
mov word [ebx + 0x28], 0xafac
mov dword [ebx + 0x2a], 0
mov dword [ebp - 0x10], 0
mov eax, dword [ebp - 0x10]
cmp eax, 0x2d
ja 0x40d065
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
movzx ecx, byte [ebx + ecx]
mov edx, eax
and edx, 0xd1434331
xor eax, 0x51434331
lea eax, [eax + edx*2]
xor eax, ecx
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
add al, 0xb
mov ecx, dword [ebp - 0x10]
mov byte [ebx + ecx], al
inc dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
cmp eax, 0x2e
jb 0x40d030
movzx ecx, word [ebx]
mov eax, dword [ebp - 0x20]
test cx, cx
je 0x40d091
add ebx, 2
mov eax, dword [ebp - 0x20]
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 0x40d080
mov word [eax], 0
movzx ecx, word [0x442d56]
test cx, cx
je 0x40d0c5
xor edx, edx
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax + edx], cx
movzx ecx, word [edx + 0x442d58]
add edx, 2
test cx, cx
jne 0x40d0b0
add eax, edx
mov word [eax], 0
mov eax, dword [0x442c30]
mov edx, dword [ebp - 0x1c]
mov dword [edx], 0xf7d6c9c8
mov byte [edx + 4], 0
mov dword [ebp - 0x10], 0
mov ecx, dword [ebp - 0x10]
cmp ecx, 4
ja 0x40d125
nop
nop
nop
nop
nop
mov ecx, dword [ebp - 0x10]
mov edx, dword [ebp - 0x10]
mov ebx, dword [ebp - 0x1c]
movzx edx, byte [ebx + edx]
add ecx, 0xcb7408ce
xor ecx, edx
mov dword [ebp - 0x14], ecx
mov ecx, dword [ebp - 0x14]
add cl, 0xfa
mov edx, dword [ebp - 0x10]
mov ebx, dword [ebp - 0x1c]
mov byte [ebx + edx], cl
mov edx, dword [ebp - 0x1c]
inc dword [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
cmp ecx, 5
jb 0x40d0f0
push dword [edx]
push 0xffffffffffffffff
push dword [ebp - 0x20]
push edi
call eax
xor eax, eax
mov edx, dword [ebp + 0xc]
mov ecx, edx
neg ecx
sbb eax, eax
push 0
push dword [ebp + 0x1c]
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push eax
push edx
mov ebx, edi
push edi
call dword [0x442c34]
xor ecx, ecx
test eax, eax
setne cl
jmp dword [ecx*4 + 0x43dd88]
mov edi, ebx
xor eax, eax
xor ebx, ebx
jmp dword [0x43ddc4]
mov eax, dword [ebp - 0x2c]
jmp dword [0x43dd90]
mov dword [eax], 0
jmp dword [0x43dd98]
mov dword [eax], 0
mov dword [eax], 0
jmp dword [0x43dd98]
push eax
push dword [ebp + 0x1c]
push dword [ebp + 0x18]
push ebx
call dword [0x442c44]
xor ecx, ecx
test eax, eax
setne cl
xor eax, eax
jmp dword [ecx*4 + 0x43ddb0]
push 0
push edi
call dword [0x442c38]
xor ecx, ecx
test eax, eax
setne cl
xor eax, eax
jmp dword [ecx*4 + 0x43ddb8]
mov ebx, eax
jmp dword [0x43ddc4]
mov al, 1
mov bl, 1
jmp dword [0x43ddc4]
push edi
mov ebx, eax
call dword [0x442c48]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
push edi
call dword [0x442c48]
jmp dword [0x43ddcc]
push dword [ebp - 0x18]
call dword [0x442c48]
push esi
call dword [0x442c48]
jmp 0x40cdbe
int3
jmp case.0x40fd25.12
lea esi, [esp + 0x48]
mov ecx, esi
push 2
call fcn.00409c30
push dword [esp + 0x14]
push ebx
push dword [esp + 0x40]
push dword [esp + 0x2c]
push esi
call fcn.00413940
add esp, 0x14
mov ecx, esi
call fcn.0040a500
movzx eax, al
jmp dword [eax*4 + 0x43e600]
mov dword [esp + 0x34], ebx
mov eax, dword [esp + 0x4c]
mov byte [esp + 0xe], 0
cmp eax, 0x3ff
mov ebx, 0x51eb851f
ja 0x40f773
mov byte [esp + 0xd], 0x30
lea esi, [esp + 0xd]
jmp 0x40f7f5
push esi
call fcn.00403120
add esp, 4
mov ecx, eax
mov dword [esp + 0x14], eax
mov ecx, 0xc
mul ecx
seto dl
mov ecx, 0xffffffff
mov edi, 0xffffffff
add eax, 4
jb 0x40f494
mov edi, eax
test dl, dl
jne 0x40f49a
mov ecx, edi
push ecx
call fcn.004092e0
add esp, 4
mov ebx, eax
mov ecx, dword [esp + 0x14]
mov dword [eax], ecx
add ebx, 4
xor eax, eax
test ecx, ecx
sete al
mov dword [esp + 0x34], ebx
jmp dword [eax*4 + 0x43e5c8]
mov edx, dword [case.0x410d22.49]
mov eax, dword [esp + 0x14]
lea eax, [eax + eax*2]
lea eax, [ebx + eax*4]
mov ecx, ebx
jmp edx
mov dword [ecx], 0
mov dword [ecx + 4], 0
mov byte [ecx + 8], 0
add ecx, 0xc
xor edx, edx
cmp ecx, eax
sete dl
jmp dword [edx*4 + 0x43e5e0]
xor edi, edi
xor eax, eax
cmp edi, dword [esp + 0x14]
setb al
jmp dword [eax*4 + 0x43e5f8]
lea eax, [esp + 0x48]
push eax
push ebx
call fcn.00402f50
add esp, 8
xor edx, edx
test eax, eax
setg dl
lea eax, [edi + edi*2]
mov ebx, dword [esp + 0x34]
lea ecx, [ebx + eax*4]
push edx
push dword [esp + 0x14]
push dword [esp + 0x24]
call fcn.004134a0
inc edi
xor eax, eax
cmp edi, dword [esp + 0x14]
setb al
jmp dword [eax*4 + 0x43e5f8]
push edi
push esi
call fcn.00403130
add esp, 8
mov ebx, eax
mov word [esp + 0x48], 0xd1ab
mov byte [esp + 0x4a], 0x46
lea eax, [esp + 0x4b]
mov byte [eax + 2], 0
mov word [eax], 0
mov dword [esp + 4], 0
mov eax, dword [esp + 4]
cmp eax, 5
ja 0x40f5e5
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 + 0x48]
lea edx, [eax + 0x91]
and edx, ecx
add eax, ecx
add edx, edx
sub eax, edx
add eax, 0xcf0da191
mov dword [esp + 0xb4], eax
mov eax, dword [esp + 0xb4]
add al, 0x2b
mov ecx, dword [esp + 4]
mov byte [esp + ecx + 0x48], al
inc dword [esp + 4]
mov eax, dword [esp + 4]
cmp eax, 6
jb 0x40f5a0
lea eax, [esp + 0x48]
push eax
push ebx
call fcn.00402e20
add esp, 8
mov dword [esp + 0x10], eax
mov dword [esp + 4], 0x5ad5ff
mov dword [esp + 0xb4], 0
mov eax, dword [esp + 0xb4]
cmp eax, 3
ja 0x40f662
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp + 0xb4]
mov ecx, dword [esp + 0xb4]
movzx ecx, byte [esp + ecx + 4]
add eax, 0xfb7b4aef
xor eax, ecx
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0x48]
add al, 0x55
mov ecx, dword [esp + 0xb4]
mov byte [esp + ecx + 4], al
inc dword [esp + 0xb4]
mov eax, dword [esp + 0xb4]
cmp eax, 4
jb 0x40f620
lea eax, [esp + 4]
push eax
push ebx
call fcn.00402e20
add esp, 8
mov dword [esp + 0x1c], eax
mov dword [esp + 0x48], 0x57b8a5bc
lea eax, [esp + 0x4b]
mov byte [eax + 3], 0
mov word [eax + 1], 0
mov dword [esp + 4], 0
mov eax, dword [esp + 4]
cmp eax, 6
ja 0x40f520
nop
mov eax, dword [esp + 4]
mov ecx, dword [esp + 4]
movzx ecx, byte [esp + ecx + 0x48]
add eax, 0xe3ba4f0e
xor eax, ecx
mov dword [esp + 0xb4], eax
mov eax, dword [esp + 0xb4]
add al, 0xba
mov ecx, dword [esp + 4]
mov byte [esp + ecx + 0x48], al
inc dword [esp + 4]
mov eax, dword [esp + 4]
cmp eax, 7
jb 0x40f6a0
jmp 0x40f520
xor eax, eax
test ebx, ebx
sete al
jmp dword [eax*4 + 0x43e608]
lea esi, [ebx - 4]
mov eax, dword [ebx - 4]
lea ecx, [eax + eax*2]
lea edi, [ebx + ecx*4]
xor ecx, ecx
test eax, eax
sete cl
jmp dword [ecx*4 + 0x43e610]
push esi
call fcn.004092f0
add esp, 4
lea esi, [esp + 0x48]
mov edi, dword [esp + 0x30]
jmp dword [0x43e620]
jmp dword [0x43e628]
push dword [esp + 0x20]
call fcn.004092f0
add esp, 4
jmp dword [0x43e630]
add edi, 0xfffffff4
xor eax, eax
cmp edi, ebx
sete al
jmp dword [eax*4 + 0x43e618]
mov eax, dword [edi - 0xc]
test eax, eax
je 0x40f761
push eax
call fcn.004092f0
add esp, 4
mov eax, dword [edi - 8]
test eax, eax
je 0x40f740
push eax
call fcn.004092f0
add esp, 4
jmp 0x40f740
mov ecx, eax
shr ecx, 0xa
lea esi, [esp + 0xe]
cmp eax, 0x19000
jb 0x40f7c9
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, ecx
mul ebx
shr edx, 5
imul eax, edx, 0x64
mov edi, ecx
sub edi, eax
movzx eax, word [edi + edi + 0x43b318]
mov word [esi - 2], ax
add esi, 0xfffffffe
cmp ecx, 0x270f
mov ecx, edx
ja 0x40f790
cmp edx, 9
ja 0x40f7d0
movzx eax, byte [edx + str.0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ]
mov byte [esi - 1], al
dec esi
jmp 0x40f7f5
mov edx, ecx
cmp edx, 9
jbe 0x40f7bc
mov eax, edx
and eax, 0x7d
mov ecx, edx
and ecx, 2
or edx, 2
imul edx, ecx
xor ecx, 2
imul ecx, eax
movzx eax, word [ecx + edx + 0x43b318]
mov word [esi - 2], ax
add esi, 0xfffffffe
mov ebx, dword [esp + 0x34]
mov dword [esp + 0x28], 0x213ce5f1
mov word [esp + 0x2c], 0
mov dword [esp + 0x18], 0
mov eax, dword [esp + 0x18]
cmp eax, 5
ja 0x40f862
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x18]
movzx ecx, byte [esp + ecx + 0x28]
lea edx, [eax + 0x49]
add eax, ecx
and edx, ecx
add edx, edx
sub eax, edx
add eax, 0x16bd8049
mov dword [esp + 0xb4], eax
mov eax, dword [esp + 0xb4]
add al, 0x93
mov ecx, dword [esp + 0x18]
mov byte [esp + ecx + 0x28], al
inc dword [esp + 0x18]
mov eax, dword [esp + 0x18]
cmp eax, 6
jb 0x40f820
mov dword [esp + 0xb4], 0x434c5851
mov dword [esp + 0xb8], 0x155d4141
mov dword [esp + 0xbc], 0x354d5452
mov dword [esp + 0xc0], 0x396a2f2f
mov dword [esp + 0xc4], 0x263b6f3d
mov dword [esp + 0xc8], 0x2062273e
mov dword [esp + 0xcc], 0x2637353c
mov dword [esp + 0xd0], 0x7d252c23
mov dword [esp + 0xd4], 0x2c3b3c2c
mov dword [esp + 0xd8], 0x21722737
mov dword [esp + 0xdc], 0x11227725
mov dword [esp + 0xe0], 0xa1f4b0f
mov dword [esp + 0xe4], 0x1309191e
mov dword [esp + 0xe8], 0x1416435c
mov dword [esp + 0xec], 0x591a0410
mov dword [esp + 0xf0], 0x1f1808
mov dword [esp + 0xf4], 0x45e0b1b
mov dword [esp + 0xf8], 0x3f15f90b
mov word [esp + 0xfc], 0x7754
lea eax, [esp + 0xfe]
mov word [eax + 4], 0
mov dword [eax], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0x4f
ja 0x40f994
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp]
mov ecx, dword [esp]
movzx ecx, byte [esp + ecx + 0xb4]
add eax, 0x5fa4ecb5
xor eax, ecx
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x18]
add al, 0x77
mov ecx, dword [esp]
mov byte [esp + ecx + 0xb4], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0x50
jb 0x40f960
lea eax, [0x442f57]
nop
nop
nop
nop
nop
nop
cmp byte [eax + 1], 0
lea eax, [eax + 1]
jne 0x40f9a0
movzx ecx, byte [esp + 0xb4]
test cl, cl
je 0x40f9d2
xor edx, edx
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [eax + edx], cl
movzx ecx, byte [esp + edx + 0xb5]
inc edx
test cl, cl
jne 0x40f9c0
add eax, edx
mov byte [eax], 0
movzx ecx, byte [esi]
test cl, cl
je 0x40f9eb
inc esi
nop
nop
nop
mov byte [eax], cl
inc eax
movzx ecx, byte [esi]
inc esi
test cl, cl
jne 0x40f9e0
mov byte [eax], 0
movzx ecx, byte [esp + 0x28]
test cl, cl
je 0x40fa0d
lea edx, [esp + 0x29]
lea esi, [esp + 0x48]
nop
mov byte [eax], cl
inc eax
movzx ecx, byte [edx]
inc edx
test cl, cl
jne 0x40fa00
jmp 0x40fa11
lea esi, [esp + 0x48]
mov byte [eax], 0
xor eax, eax
test ebx, ebx
sete al
jmp dword [eax*4 + 0x43e608]
mov edi, dword [esp + 0x30]
jmp dword [0x43e620]
push dword [esp + 0x38]
call fcn.004092f0
add esp, 4
jmp dword [0x43e628]
jmp dword [0x43e630]
mov ecx, esi
call fcn.00409c70
nop
nop
nop
nop
nop
mov ecx, esi
call fcn.00409c70
jmp dword [0x43e638]
lea esi, [ebx - 4]
mov eax, dword [ebx - 4]
lea ecx, [eax + eax*2]
lea edi, [ebx + ecx*4]
xor ecx, ecx
test eax, eax
sete cl
jmp dword [ecx*4 + 0x43e670]
push esi
call fcn.004092f0
add esp, 4
lea esi, [esp + 0x48]
jmp dword [0x43e680]
mov edi, dword [esp + 0x30]
jmp dword [0x43e688]
add edi, 0xfffffff4
xor eax, eax
cmp edi, ebx
sete al
jmp dword [eax*4 + 0x43e678]
mov eax, dword [edi - 0xc]
test eax, eax
je 0x40fc10
push eax
call fcn.004092f0
add esp, 4
jmp 0x40fc10
lea esi, [esp + 0x48]
mov word [edx], 0
mov ecx, dword [esp + 0x1c]
mov eax, ecx
and eax, 1
xor ecx, 1
lea ecx, [ecx + eax*2]
xor eax, eax
cmp ecx, dword [esp + 0x20]
setb al
mov ebx, dword [esp + 0x34]
jmp dword [eax*4 + 0x43e660]
mov dword [esp + 0x1c], ecx
push ecx
push dword [esp + 0x3c]
call fcn.00403130
add esp, 8
mov edi, eax
mov word [esp + 0x48], 0x699f
mov byte [esp + 0x4a], 0xfa
mov dword [esp + 0x4b], 0
mov dword [esp + 4], 0
mov eax, dword [esp + 4]
cmp eax, 6
ja 0x40fda9
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 + 0x48]
add eax, 0x80f428ff
xor eax, ecx
mov dword [esp + 0xb4], eax
mov eax, dword [esp + 0xb4]
add al, 5
mov ecx, dword [esp + 4]
mov byte [esp + ecx + 0x48], al
inc dword [esp + 4]
mov eax, dword [esp + 4]
cmp eax, 7
jb 0x40fd70
push esi
push edi
call fcn.00402e20
add esp, 8
mov dword [esp + 0x14], eax
mov word [esp + 0x48], 0xd5ff
mov byte [esp + 0x4a], 0x5a
lea eax, [esp + 0x4b]
mov byte [eax + 4], 0
mov dword [eax], 0
mov dword [esp + 4], 0
mov eax, dword [esp + 4]
cmp eax, 7
ja 0x40fe29
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 + 0x48]
add eax, 0x534f396f
xor eax, ecx
mov dword [esp + 0xb4], eax
mov eax, dword [esp + 0xb4]
add al, 0xd5
mov ecx, dword [esp + 4]
mov byte [esp + ecx + 0x48], al
inc dword [esp + 4]
mov eax, dword [esp + 4]
cmp eax, 8
jb 0x40fdf0
push esi
push edi
call fcn.00402e20
add esp, 8
mov dword [esp + 0x10], eax
mov word [esp + 0x48], 0xbbab
mov byte [esp + 0x4a], 0x4e
lea eax, [esp + 0x4b]
mov byte [eax + 4], 0
mov dword [eax], 0
mov dword [esp + 4], 0
mov eax, dword [esp + 4]
cmp eax, 7
ja 0x40feb4
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 + 0x48]
lea edx, [eax + ecx]
add eax, 0xd
and eax, ecx
add eax, eax
sub edx, eax
add edx, 0x4642940d
mov dword [esp + 0xb4], edx
mov eax, dword [esp + 0xb4]
add al, 0xbf
mov ecx, dword [esp + 4]
mov byte [esp + ecx + 0x48], al
inc dword [esp + 4]
mov eax, dword [esp + 4]
cmp eax, 8
jb 0x40fe70
push esi
push edi
call fcn.00402e20
add esp, 8
mov ecx, dword [esp + 0x1c]
lea ecx, [ecx + ecx*2]
mov dword [ebx + ecx*4], 0
mov edx, dword [esp + 0x14]
mov dword [ebx + ecx*4 + 4], edx
lea edi, [ebx + ecx*4]
mov dword [ebx + ecx*4 + 8], eax
xor esi, esi
mov ebx, 0xfffffffe
mov eax, dword [esp + 0x10]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
add ebx, 2
cmp byte [eax + esi], 0
lea esi, [esi + 1]
jne 0x40fef0
test esi, esi
jns 0x40ff10
mov eax, 0xffffffff
jmp 0x40ff13
lea eax, [ebx + 2]
push eax
call fcn.004092e0
add esp, 4
mov edx, eax
mov dword [edi], eax
mov eax, dword [esp + 0x10]
lea edi, [eax + esi]
dec edi
mov dword [esp + 0x48], 0
cmp edi, eax
jbe 0x40fd00
add ebx, edx
cmp edx, ebx
lea esi, [esp + 0x48]
jae 0x40fd04
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp byte [eax], 0
je 0x40fd04
push esi
push edi
push eax
mov esi, eax
mov dword [esp + 0x1c], edx
call fcn.0040d220
mov edx, dword [esp + 0x1c]
add esp, 0xc
movzx ecx, word [esp + 0x48]
mov word [edx], cx
add edx, 2
cmp edx, ebx
jae 0x40fd00
add esi, eax
cmp esi, edi
mov eax, esi
lea esi, [esp + 0x48]
jb 0x40ff50
jmp 0x40fd04
jmp dword [0x43e680]
push dword [esp + 0x24]
call fcn.004092f0
add esp, 4
mov edi, dword [esp + 0x30]
jmp dword [0x43e688]
push dword [esp + 0x3c]
call fcn.004092f0
add esp, 4
mov word [esp + 0x28], 0x39a6
lea eax, [esp + 0x29]
mov word [eax + 5], 0
mov dword [eax + 1], 0
jmp dword [0x43e4d0]
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 7
ja 0x41053e
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp]
mov ecx, dword [esp]
movzx ecx, byte [esp + ecx + 0x28]
add eax, 0x1391f8a
xor eax, ecx
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x18]
add al, 0x4e
mov ecx, dword [esp]
mov byte [esp + ecx + 0x28], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 8
jb 0x410510
push 2
lea eax, [esp + 0x2c]
push eax
push ebx
call fcn.004030b0
add esp, 0xc
jmp case.0x4110f5.2
push 2
lea eax, [esp + 0x2c]
push eax
push ebx
call fcn.004030b0
add esp, 0xc
jmp dword [0x43e4dc]
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 7
ja 0x410550
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp]
mov ecx, dword [esp]
movzx ecx, byte [esp + ecx + 0x28]
add eax, 0x1391f8a
xor eax, ecx
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x18]
add al, 0x4e
mov ecx, dword [esp]
mov byte [esp + ecx + 0x28], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 8
jb 0x410580
jmp 0x410550
xor ecx, ecx
test eax, eax
setne cl
jmp dword [ecx*4 + 0x43e4e0]
mov dword [esp + 0x44], 0x913c
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 3
ja 0x41060e
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp]
mov ecx, dword [esp]
movzx ecx, byte [esp + ecx + 0x44]
add eax, 0x6e9a9e4
xor eax, ecx
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x18]
add al, 0x8c
mov ecx, dword [esp]
mov byte [esp + ecx + 0x44], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 4
jb 0x4105e0
push 3
lea eax, [esp + 0x48]
push eax
push ebx
call fcn.004030b0
add esp, 0xc
xor ecx, ecx
test eax, eax
setne cl
jmp dword [ecx*4 + 0x43e4e8]
mov dword [esp + 0x114], 0xfe4a5a
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 3
ja 0x410691
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp]
mov ecx, dword [esp]
movzx ecx, byte [esp + ecx + 0x114]
lea edx, [eax + ecx]
add edx, 0x42f07855
add eax, 0x42f07855
and eax, ecx
add eax, eax
sub edx, eax
mov dword [esp + 0x18], edx
mov eax, dword [esp + 0x18]
add al, 0x57
mov ecx, dword [esp]
mov byte [esp + ecx + 0x114], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 4
jb 0x410650
push 3
lea eax, [esp + 0x118]
push eax
push ebx
call fcn.004030b0
add esp, 0xc
xor ecx, ecx
test eax, eax
sete cl
jmp dword [ecx*4 + 0x43e4f0]
mov word [esp + 0x48], 0x3993
lea eax, [esp + 0x4b]
mov byte [eax + 1], 0
mov word [eax - 1], 0
mov dword [esp + 4], 0
mov eax, dword [esp + 4]
cmp eax, 4
ja 0x410719
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp + 4]
mov ecx, dword [esp + 4]
movzx ecx, byte [esp + ecx + 0x48]
add eax, 0x2a95f74a
xor eax, ecx
mov dword [esp + 0xb4], eax
mov eax, dword [esp + 0xb4]
add al, 0x8e
mov ecx, dword [esp + 4]
mov byte [esp + ecx + 0x48], al
inc dword [esp + 4]
mov eax, dword [esp + 4]
cmp eax, 5
jb 0x4106e0
push esi
push ebx
call fcn.00402e20
add esp, 8
mov dword [esp + 0x14], eax
mov word [esp + 0x48], 0x9908
lea eax, [esp + 0x4b]
mov byte [eax + 1], 0
mov word [eax - 1], 0
mov dword [esp + 4], 0
mov eax, dword [esp + 4]
cmp eax, 4
ja 0x410789
nop
nop
nop
mov eax, dword [esp + 4]
mov ecx, dword [esp + 4]
movzx ecx, byte [esp + ecx + 0x48]
add eax, 0xd97d02e6
xor eax, ecx
mov dword [esp + 0xb4], eax
mov eax, dword [esp + 0xb4]
add al, 0x82
mov ecx, dword [esp + 4]
mov byte [esp + ecx + 0x48], al
inc dword [esp + 4]
mov eax, dword [esp + 4]
cmp eax, 5
jb 0x410750
push esi
push ebx
call fcn.00402e20
add esp, 8
mov dword [esp + 0x24], eax
mov word [esp + 0x48], 0x2793
lea eax, [esp + 0x4b]
mov byte [eax + 3], 0
mov dword [eax - 1], 0
mov dword [esp + 4], 0
mov eax, dword [esp + 4]
cmp eax, 6
ja 0x4107f9
nop
nop
mov eax, dword [esp + 4]
mov ecx, dword [esp + 4]
movzx ecx, byte [esp + ecx + 0x48]
add eax, 0x8db96e09
xor eax, ecx
mov dword [esp + 0xb4], eax
mov eax, dword [esp + 0xb4]
add al, 0xd3
mov ecx, dword [esp + 4]
mov byte [esp + ecx + 0x48], al
inc dword [esp + 4]
mov eax, dword [esp + 4]
cmp eax, 7
jb 0x4107c0
push esi
push ebx
call fcn.00402ef0
add esp, 8
mov dword [esp + 0x20], eax
mov word [esp + 0x48], 0x71fa
lea eax, [esp + 0x4b]
mov byte [eax + 3], 0
mov dword [eax - 1], 0
mov dword [esp + 4], 0
mov eax, dword [esp + 4]
cmp eax, 6
ja 0x410869
nop
nop
mov eax, dword [esp + 4]
mov ecx, dword [esp + 4]
movzx ecx, byte [esp + ecx + 0x48]
add eax, 0x25391e6c
xor eax, ecx
mov dword [esp + 0xb4], eax
mov eax, dword [esp + 0xb4]
add al, 0xe4
mov ecx, dword [esp + 4]
mov byte [esp + ecx + 0x48], al
inc dword [esp + 4]
mov eax, dword [esp + 4]
cmp eax, 7
jb 0x410830
push esi
push ebx
call fcn.00402e20
add esp, 8
mov dword [esp + 0x104], eax
mov word [esp + 0x48], 0x997c
lea eax, [esp + 0x4b]
mov byte [eax + 3], 0
mov dword [eax - 1], 0
mov dword [esp + 4], 0
mov eax, dword [esp + 4]
cmp eax, 6
ja 0x4108e9
nop
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 + 0x48]
add eax, 0x3c81a9da
xor eax, ecx
mov dword [esp + 0xb4], eax
mov eax, dword [esp + 0xb4]
add al, 0xbe
mov ecx, dword [esp + 4]
mov byte [esp + ecx + 0x48], al
inc dword [esp + 4]
mov eax, dword [esp + 4]
cmp eax, 7
jb 0x4108b0
push esi
push ebx
call fcn.00402e80
add esp, 8
mov word [esp + 0x48], 0xa2ae
mov byte [esp + 0x4a], 0x12
lea eax, [esp + 0x4b]
mov byte [eax + 2], 0
mov word [eax], 0
fnstcw word [esp + 0x10c]
movzx eax, word [esp + 0x10c]
or eax, 0xc00
mov word [esp + 0x11c], ax
fldcw word [esp + 0x11c]
fistp dword [esp + 0x12c]
fldcw word [esp + 0x10c]
mov eax, dword [esp + 0x12c]
mov dword [esp + 0x38], eax
mov dword [esp + 4], 0
mov eax, dword [esp + 4]
cmp eax, 5
ja 0x410999
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp + 4]
mov ecx, dword [esp + 4]
movzx ecx, byte [esp + ecx + 0x48]
add eax, 0xedb15dfc
xor eax, ecx
mov dword [esp + 0xb4], eax
mov eax, dword [esp + 0xb4]
add al, 0x14
mov ecx, dword [esp + 4]
mov byte [esp + ecx + 0x48], al
inc dword [esp + 4]
mov eax, dword [esp + 4]
cmp eax, 6
jb 0x410960
push esi
push ebx
call fcn.00402e80
add esp, 8
xor edi, edi
mov esi, 0xfffffffe
mov eax, dword [esp + 0x14]
nop
nop
add esi, 2
cmp byte [eax + edi], 0
lea edi, [edi + 1]
jne 0x4109b0
fnstcw word [esp + 0x10a]
movzx eax, word [esp + 0x10a]
or eax, 0xc00
mov word [esp + 0x11a], ax
fldcw word [esp + 0x11a]
fistp dword [esp + 0x128]
fldcw word [esp + 0x10a]
mov eax, dword [esp + 0x128]
mov dword [esp + 0x34], eax
lea eax, [esi + 2]
test edi, edi
jns 0x410a04
mov eax, 0xffffffff
push eax
call fcn.004092e0
add esp, 4
mov dword [esp + 0x48], 0
add esi, eax
mov dword [esp + 0x10], eax
mov dword [esp + 0x1c], eax
cmp eax, esi
mov ecx, dword [esp + 0x14]
jae 0x410a74
lea ebx, [ecx + edi]
dec ebx
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x10], eax
cmp ecx, ebx
jae 0x410a74
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x10], eax
cmp byte [ecx], 0
je 0x410a74
lea eax, [esp + 0x48]
push eax
push ebx
push ecx
mov edi, ecx
call fcn.0040d220
add esp, 0xc
movzx ecx, word [esp + 0x48]
mov edx, dword [esp + 0x10]
mov word [edx], cx
add edx, 2
mov dword [esp + 0x10], edx
cmp edx, esi
jae 0x410a74
add edi, eax
cmp edi, ebx
mov ecx, edi
jb 0x410a3f
mov eax, dword [esp + 0x10]
mov word [eax], 0
mov dword [esp + 0xb4], 0
mov dword [esp + 0xb8], 0
mov dword [esp + 0xbc], 0
lea ecx, [esp + 0xb4]
mov esi, dword [esp + 0x1c]
push esi
call fcn.00434160
jmp dword [0x43e4f8]
push esi
call fcn.004092f0
add esp, 4
lea ecx, [esp + 0xb4]
push 0x400
call fcn.00434390
not eax
shr eax, 0x1f
lea esi, [esp + 0x48]
mov edi, dword [esp + 0x30]
jmp dword [eax*4 + 0x43e500]
mov dword [esp + 0x18], 0
mov ecx, dword [esp + 0xb4]
mov dword [esp + 0x28], 0x585b5a45
mov dword [esp + 4], 0
mov eax, dword [esp + 4]
cmp eax, 3
ja 0x410b3e
mov eax, dword [esp + 4]
mov edx, dword [esp + 4]
movzx edx, byte [esp + edx + 0x28]
add eax, 0x81c0ccef
xor eax, edx
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0x48]
add al, 0x55
mov edx, dword [esp + 4]
mov byte [esp + edx + 0x28], al
inc dword [esp + 4]
mov eax, dword [esp + 4]
cmp eax, 4
jb 0x410b0b
mov eax, dword [esp + 0x28]
mov edx, dword [0x443f64]
test edx, edx
je case.default.0x410ba3
xor esi, esi
mov edi, dword [0x443f68]
cmp dword [edi + esi*8], 0x1b788dcf
je 0x410b6c
inc esi
cmp edx, esi
jne 0x410b54
lea esi, [esp + 0x48]
mov edi, dword [esp + 0x30]
jmp case.default.0x410ba3
mov edx, dword [edi + esi*8 + 4]
cmp edx, eax
lea esi, [esp + 0x48]
mov edi, dword [esp + 0x30]
je case.default.0x410ba3
lea eax, [esp + 0x18]
push eax
push 0
push 0
push 0x2b
push ecx
push 5
push dword [0x443f6c]
push edx
call fcn.00436330
add esp, 0x20
xor ecx, ecx
cmp eax, 0xc0000004
sete cl
jmp dword [ecx*4 + 0x43e508]
mov eax, dword [esp + 0x18]
add eax, 2
push eax
call fcn.00434040
add esp, 4
mov dword [esp + 0x40], eax
mov ecx, dword [esp + 0x18]
add ecx, 2
mov edx, dword [esp + 0xb4]
mov dword [esp + 0x28], 0x585b5a45
mov dword [esp + 4], 0
mov eax, dword [esp + 4]
cmp eax, 3
ja 0x410c18
mov eax, dword [esp + 4]
mov esi, dword [esp + 4]
movzx esi, byte [esp + esi + 0x28]
add eax, 0x81c0ccef
xor eax, esi
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0x48]
add al, 0x55
mov esi, dword [esp + 4]
mov byte [esp + esi + 0x28], al
inc dword [esp + 4]
mov eax, dword [esp + 4]
cmp eax, 4
jb 0x410be5
mov eax, dword [esp + 0x28]
mov esi, dword [0x443f64]
test esi, esi
je case.default.0x410c6e
xor edi, edi
mov ebx, dword [0x443f68]
cmp dword [ebx + edi*8], 0x1b788dcf
je 0x410c42
inc edi
cmp esi, edi
jne 0x410c2e
mov edi, dword [esp + 0x30]
jmp case.default.0x410c6e
mov esi, dword [ebx + edi*8 + 4]
cmp esi, eax
mov edi, dword [esp + 0x30]
je case.default.0x410c6e
push 0
push ecx
push dword [esp + 0x48]
push 0x2b
push edx
push 5
push dword [0x443f6c]
push esi
call fcn.00436330
add esp, 0x20
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x43e510]
mov ecx, dword [esp + 0x24]
mov eax, ecx
mov esi, eax
inc eax
cmp byte [esi], 0
jne 0x410c7b
mov edi, esi
sub edi, ecx
mov eax, edi
inc eax
lea eax, [edi + edi + 2]
jns 0x410c95
mov eax, 0xffffffff
push eax
call fcn.004092e0
add esp, 4
mov dword [esp + 0x48], 0
mov dword [esp + 0x14], edi
lea ecx, [eax + edi*2]
mov edi, eax
mov dword [esp + 0x1c], eax
mov dword [esp + 0x10], ecx
cmp eax, ecx
mov ebx, dword [esp + 0x24]
jae 0x410cf6
mov edi, dword [esp + 0x1c]
cmp ebx, esi
jae 0x410cf6
mov edi, dword [esp + 0x1c]
cmp byte [ebx], 0
je 0x410cf6
lea eax, [esp + 0x48]
push eax
push esi
push ebx
call fcn.0040d220
add esp, 0xc
movzx ecx, word [esp + 0x48]
mov word [edi], cx
add edi, 2
cmp edi, dword [esp + 0x10]
jae 0x410cf6
add ebx, eax
cmp ebx, esi
jb 0x410ccb
mov word [edi], 0
mov eax, dword [esp + 0x40]
mov edx, dword [eax + 4]
movzx eax, word [eax]
and eax, 0xfffffffe
add eax, edx
add eax, 0xfffffffe
mov ecx, dword [case.0x410d22.4]
xor ebx, ebx
mov dword [esp + 0x10], edx
cmp eax, edx
setae bl
mov esi, eax
mov edx, eax
jmp dword [ebx*4 + 0x43e518]
movzx edi, word [edx]
nop
nop
nop
nop
jmp ecx
xor ebx, ebx
test di, di
setne bl
mov esi, eax
jmp dword [ebx*4 + 0x43e530]
xor ebx, ebx
cmp di, 0x5c
sete bl
mov esi, edx
jmp dword [ebx*4 + 0x43e538]
add edx, 0xfffffffe
xor ebx, ebx
cmp edx, dword [esp + 0x10]
setae bl
mov esi, eax
jmp dword [ebx*4 + 0x43e518]
mov edi, esi
sub edi, dword [esp + 0x10]
sar edi, 1
mov eax, edi
mov edx, dword [esp + 0x14]
and eax, edx
xor edx, edi
lea ecx, [edx + eax*2]
lea edx, [edx + eax*2]
inc edx
lea eax, [ecx*2 + 2]
test edx, edx
jns 0x410d93
mov eax, 0xffffffff
push eax
call fcn.004092e0
add esp, 4
mov ebx, eax
mov dword [esp + 0x14], eax
cmp esi, dword [esp + 0x10]
je 0x410e4f
mov eax, dword [esp + 0x40]
mov eax, dword [eax + 4]
lea ecx, [edi - 1]
mov edx, edi
and edx, 3
je 0x410df4
mov dword [esp + 0x24], edi
mov dword [esp + 0x10], ecx
xor esi, esi
mov ebx, dword [esp + 0x14]
movzx ecx, word [eax]
mov edi, edx
xor edx, edx
test cx, cx
setne dl
lea eax, [eax + edx*2]
mov edx, edi
mov word [ebx], cx
add ebx, 2
inc esi
cmp edi, esi
jne 0x410dcb
mov edi, dword [esp + 0x24]
sub edi, esi
mov ecx, dword [esp + 0x10]
jmp 0x410df8
mov ebx, dword [esp + 0x14]
cmp ecx, 3
jb 0x410e4f
movzx ecx, word [eax]
xor edx, edx
test cx, cx
setne dl
mov word [ebx], cx
lea ecx, [eax + edx*2]
movzx eax, word [eax + edx*2]
xor edx, edx
test ax, ax
setne dl
mov word [ebx + 2], ax
lea eax, [ecx + edx*2]
movzx ecx, word [ecx + edx*2]
xor edx, edx
test cx, cx
setne dl
mov word [ebx + 4], cx
lea ecx, [eax + edx*2]
movzx edx, word [eax + edx*2]
xor eax, eax
test dx, dx
setne al
lea eax, [ecx + eax*2]
mov word [ebx + 6], dx
add ebx, 8
add edi, 0xfffffffc
jne 0x410dfd
mov esi, dword [esp + 0x1c]
movzx eax, word [esi]
test ax, ax
je 0x410e71
mov ecx, esi
add ecx, 2
mov word [ebx], ax
add ebx, 2
movzx eax, word [ecx]
add ecx, 2
test ax, ax
jne 0x410e60
mov word [ebx], 0
jmp dword [0x43e540]
jmp dword [0x43e548]
push esi
call fcn.004092f0
add esp, 4
push esi
call fcn.004092f0
add esp, 4
jmp dword [0x43e550]
mov esi, dword [esp + 0x14]
sub ebx, esi
mov ecx, ebx
sar ecx, 1
and ebx, 2
xor ecx, 1
add ecx, ebx
lea eax, [ecx + ecx]
test ecx, ecx
jns 0x410eb8
mov eax, 0xffffffff
push eax
call fcn.004092e0
add esp, 4
mov dword [esp + 0x3c], eax
push eax
push esi
call fcn.00431560
add esp, 8
jmp dword [0x43e558]
push esi
call fcn.004092f0
add esp, 4
mov ecx, dword [esp + 0x104]
mov eax, ecx
jmp 0x411567
mov ecx, dword [esp + 0x104]
mov edi, ecx
jmp 0x41155f
mov word [esp + 4], 0xeb77
lea eax, [esp + 6]
mov byte [eax + 2], 0
mov word [eax], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 4
ja case.0x40c309.193
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp]
mov ecx, dword [esp]
movzx ecx, byte [esp + ecx + 4]
add eax, 0x32b936d7
xor eax, ecx
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x18]
add al, 0xcd
mov ecx, dword [esp]
mov byte [esp + ecx + 4], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 5
jb 0x4110b0
push 5
lea eax, [esp + 8]
push eax
push ebx
call fcn.004030b0
add esp, 0xc
xor ecx, ecx
test eax, eax
setne cl
jmp dword [ecx*4 + 0x43e4c8]
mov word [esp + 0xb4], 0xf9c
mov dword [esp + 0xb6], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 5
ja case.0x40c309.191
mov eax, dword [esp]
mov ecx, dword [esp]
movzx ecx, byte [esp + ecx + 0xb4]
add eax, 0x6a3c217d
xor eax, ecx
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x18]
add al, 0x8f
mov ecx, dword [esp]
mov byte [esp + ecx + 0xb4], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 6
jb case.default.0x41116e
push 2
lea eax, [esp + 0xb8]
push eax
push ebx
call fcn.004030b0
add esp, 0xc
xor ecx, ecx
test eax, eax
setne cl
jmp dword [ecx*4 + 0x43e4c0]
mov esi, eax
inc eax
lea eax, [esi + esi + 2]
jns 0x411266
mov eax, 0xffffffff
push eax
call fcn.004092e0
add esp, 4
mov dword [esp + 0x48], 0
lea ecx, [eax + esi*2]
mov esi, eax
mov dword [esp + 0x24], eax
mov dword [esp + 0x10], ecx
cmp eax, ecx
mov ebx, dword [esp + 0x104]
jae 0x4112c6
mov esi, dword [esp + 0x24]
cmp ebx, edi
jae 0x4112c6
mov esi, dword [esp + 0x24]
cmp byte [ebx], 0
je 0x4112c6
lea eax, [esp + 0x48]
push eax
push edi
push ebx
call fcn.0040d220
add esp, 0xc
movzx ecx, word [esp + 0x48]
mov word [esi], cx
add esi, 2
cmp esi, dword [esp + 0x10]
jae 0x4112c6
add ebx, eax
cmp ebx, edi
jb 0x41129b
mov word [esi], 0
lea ecx, [esp + 0x48]
push 1
call fcn.00409c30
xor esi, esi
mov edi, dword [esp + 0x30]
jmp 0x4112ed
mov esi, dword [esp + 0x1c]
mov eax, esi
and eax, 1
xor esi, 1
lea esi, [esi + eax*2]
mov ebx, dword [esp + 0x20]
push ebx
call fcn.00403120
add esp, 4
xor ecx, ecx
cmp esi, eax
setb cl
jmp dword [ecx*4 + 0x43e560]
mov dword [esp + 0x1c], esi
push esi
push ebx
call fcn.00403100
add esp, 8
push eax
call fcn.00402e60
add esp, 4
mov ebx, eax
xor eax, eax
test ebx, ebx
sete al
jmp dword [eax*4 + 0x43e580]
mov eax, ebx
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov esi, eax
inc eax
cmp byte [esi], 0
jne 0x411340
mov edi, esi
sub edi, ebx
mov eax, edi
inc eax
lea eax, [edi + edi + 2]
jns 0x41135a
mov eax, 0xffffffff
push eax
call fcn.004092e0
add esp, 4
mov dword [esp + 4], 0
lea ecx, [eax + edi*2]
mov edi, eax
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], ecx
cmp eax, ecx
jae 0x4113bb
mov edi, dword [esp + 0x14]
cmp ebx, esi
jae 0x4113bb
mov edi, dword [esp + 0x14]
nop
nop
nop
nop
nop
nop
nop
nop
cmp byte [ebx], 0
je 0x4113bb
lea eax, [esp + 4]
push eax
push esi
push ebx
call fcn.0040d220
add esp, 0xc
movzx ecx, word [esp + 4]
mov word [edi], cx
add edi, 2
cmp edi, dword [esp + 0x10]
jae 0x4113bb
add ebx, eax
cmp ebx, esi
jb 0x411390
mov word [edi], 0
push 0
push 0
push dword [esp + 0x40]
push dword [esp + 0x40]
mov ebx, dword [esp + 0x24]
push ebx
push dword [esp + 0x50]
push dword [esp + 0x3c]
lea esi, [esp + 0x64]
push esi
call fcn.00417e80
add esp, 0x20
mov edi, dword [esp + 0x30]
jmp dword [0x43e588]
push ebx
call fcn.004092f0
add esp, 4
jmp case.0x410d22.27
jmp dword [0x43e568]
push dword [esp + 0x24]
call fcn.004092f0
add esp, 4
jmp dword [0x43e590]
jmp dword [0x43e590]
push dword [esp + 0x3c]
call fcn.004092f0
add esp, 4
lea esi, [esp + 0x48]
mov ecx, esi
call fcn.0040a500
mov ecx, esi
call fcn.00409c70
push dword [esp + 0x40]
call fcn.004340c0
add esp, 4
lea esi, [esp + 0x48]
mov eax, dword [case.0x40c309.206]
nop
jmp eax
lea ecx, [esp + 0xb4]
call fcn.00434500
jmp case.0x40f0f6.1
nop
nop
lea eax, [edi + 1]
cmp byte [edi], 0
je 0x41156b
mov edi, eax
jmp 0x41155f
push edi
push ecx
call fcn.00413450
add esp, 8
jmp 0x411258
int3
lea esi, [esp + 0x42]
mov dword [esp + 0x38], edi
jmp 0x4115db
mov eax, ebx
and eax, 1
xor ebx, 1
lea ebx, [ebx + eax*2]
push edi
call fcn.00403120
add esp, 4
xor ecx, ecx
cmp ebx, eax
setb cl
mov al, 1
jmp dword [ecx*4 + 0x43e6a8]
push ebx
push edi
call fcn.00403130
add esp, 8
mov dword [esp + 0x20], eax
mov dword [esp + 0x10c], 0x49dd
mov byte [esp + 0x110], 0
mov dword [esp + 0xac], 0
mov eax, dword [esp + 0xac]
cmp eax, 4
ja 0x411678
nop
nop
nop
nop
mov eax, dword [esp + 0xac]
mov ecx, dword [esp + 0xac]
movzx ecx, byte [esp + ecx + 0x10c]
add eax, 0xd012c112
xor eax, ecx
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x40]
add al, 0xa6
mov ecx, dword [esp + 0xac]
mov byte [esp + ecx + 0x10c], al
inc dword [esp + 0xac]
mov eax, dword [esp + 0xac]
cmp eax, 5
jb 0x411630
push 2
lea eax, [esp + 0x110]
push eax
push dword [esp + 0x28]
call fcn.004030b0
add esp, 0xc
xor ecx, ecx
test eax, eax
setne cl
jmp dword [ecx*4 + 0x43e6b0]
mov word [esp + 0x40], 0x9586
mov byte [esp + 0x42], 0x22
mov byte [esi + 5], 0
mov dword [esi + 1], 0
mov dword [esp + 4], 0
mov eax, dword [esp + 4]
cmp eax, 7
ja 0x411710
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 + 0x40]
lea edx, [eax + ecx]
add edx, 0x6c59ce48
add eax, 0x6c59ce48
and eax, ecx
add eax, eax
sub edx, eax
mov dword [esp + 0xc], edx
mov eax, dword [esp + 0xc]
add al, 0x98
mov ecx, dword [esp + 4]
mov byte [esp + ecx + 0x40], al
inc dword [esp + 4]
mov eax, dword [esp + 4]
cmp eax, 8
jb 0x4116d0
push 3
lea eax, [esp + 0x44]
push eax
push dword [esp + 0x28]
call fcn.004030b0
add esp, 0xc
xor ecx, ecx
test eax, eax
setne cl
jmp dword [ecx*4 + 0x43e6b8]
mov word [esp + 0xac], 0x19bd
lea eax, [esp + 0xae]
mov byte [eax + 4], 0
mov dword [eax], 0
mov dword [esp + 4], 0
mov eax, dword [esp + 4]
cmp eax, 6
ja 0x4117a6
nop
nop
nop
mov eax, dword [esp + 4]
mov ecx, dword [esp + 4]
movzx ecx, byte [esp + ecx + 0xac]
lea edx, [eax + ecx]
add eax, 0xfa
and eax, ecx
add eax, eax
sub edx, eax
add edx, 0x350c6bfa
mov dword [esp + 0xc], edx
mov eax, dword [esp + 0xc]
add al, 0x1e
mov ecx, dword [esp + 4]
mov byte [esp + ecx + 0xac], al
inc dword [esp + 4]
mov eax, dword [esp + 4]
cmp eax, 7
jb 0x411760
push 3
lea eax, [esp + 0xb0]
push eax
push dword [esp + 0x28]
call fcn.004030b0
add esp, 0xc
xor ecx, ecx
test eax, eax
sete cl
jmp dword [ecx*4 + 0x43e6c0]
mov word [esp + 0x10c], 0x3ba7
lea eax, [esp + 0x10f]
mov word [eax + 3], 0
mov dword [eax - 1], 0
mov dword [esp + 0xac], 0
mov eax, dword [esp + 0xac]
cmp eax, 7
ja 0x411848
nop
mov eax, dword [esp + 0xac]
mov ecx, dword [esp + 0xac]
movzx ecx, byte [esp + ecx + 0x10c]
add eax, 0x75af078b
xor eax, ecx
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x40]
add al, 0x49
mov ecx, dword [esp + 0xac]
mov byte [esp + ecx + 0x10c], al
inc dword [esp + 0xac]
mov eax, dword [esp + 0xac]
cmp eax, 8
jb 0x411800
lea eax, [esp + 0x10c]
push eax
push dword [esp + 0x24]
call fcn.00402e20
add esp, 8
mov esi, eax
mov word [esp + 0x10c], 0xdbea
mov byte [esp + 0x10e], 0x46
lea eax, [esp + 0x10f]
mov byte [eax + 2], 0
mov word [eax], 0
mov dword [esp + 0xac], 0
mov eax, dword [esp + 0xac]
cmp eax, 5
ja 0x4118e8
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp + 0xac]
mov ecx, dword [esp + 0xac]
movzx ecx, byte [esp + ecx + 0x10c]
add eax, 0xc973fc71
xor eax, ecx
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x40]
add al, 0xcb
mov ecx, dword [esp + 0xac]
mov byte [esp + ecx + 0x10c], al
inc dword [esp + 0xac]
mov eax, dword [esp + 0xac]
cmp eax, 6
jb 0x4118a0
mov dword [esp + 0x3c], ebx
lea eax, [esp + 0x10c]
push eax
push dword [esp + 0x24]
call fcn.00402e80
add esp, 8
mov dword [esp + 0xac], 0xb77
fnstcw word [esp + 0xaa]
movzx eax, word [esp + 0xaa]
or eax, 0xc00
mov word [esp + 0xf2], ax
fldcw word [esp + 0xf2]
fistp dword [esp + 0x108]
fldcw word [esp + 0xaa]
mov eax, dword [esp + 0x108]
mov dword [esp + 0x2c], eax
mov dword [esp + 0x40], 0
mov eax, dword [esp + 0x40]
cmp eax, 3
ja 0x41199f
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0x40]
movzx ecx, byte [esp + ecx + 0xac]
add eax, 0x2e1c2103
xor eax, ecx
mov dword [esp + 0x10c], eax
mov eax, dword [esp + 0x10c]
add al, 0xf1
mov ecx, dword [esp + 0x40]
mov byte [esp + ecx + 0xac], al
inc dword [esp + 0x40]
mov eax, dword [esp + 0x40]
cmp eax, 4
jb 0x411960
lea eax, [esp + 0xac]
push eax
push dword [esp + 0x24]
call fcn.00402e80
add esp, 8
lea ebx, [esi - 1]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp byte [ebx + 1], 0
lea ebx, [ebx + 1]
jne 0x4119c0
fnstcw word [esp + 0xa8]
movzx eax, word [esp + 0xa8]
or eax, 0xc00
mov word [esp + 0xf0], ax
fldcw word [esp + 0xf0]
fistp dword [esp + 0x104]
fldcw word [esp + 0xa8]
mov eax, dword [esp + 0x104]
mov dword [esp + 0x24], eax
mov dword [esp + 0x40], 0
lea eax, [esp + 0x10c]
cmp esi, ebx
jae 0x411a6a
xor edi, edi
nop
nop
nop
nop
nop
nop
cmp byte [esi], 0
je 0x411a5e
lea eax, [esp + 0x40]
push eax
push ebx
push esi
call fcn.0040d220
add esp, 0xc
movzx edx, word [esp + 0x40]
lea ecx, [edi + 2]
mov word [esp + edi + 0x10c], dx
cmp edi, 0x7fb
ja 0x411a54
add esi, eax
mov edi, ecx
cmp esi, ebx
jb 0x411a20
lea eax, [esp + ecx]
add eax, 0x10c
jmp 0x411a66
lea eax, [esp + edi]
add eax, 0x10c
mov edi, dword [esp + 0x38]
mov word [eax], 0
lea eax, [esp + 0xec]
push eax
lea eax, [esp + 0x34]
push eax
lea eax, [esp + 0x114]
push eax
call fcn.0040b860
add esp, 0xc
movzx eax, al
mov ebx, dword [esp + 0x3c]
lea esi, [esp + 0x42]
jmp dword [eax*4 + 0x43e6c8]
xor eax, eax
mov edx, dword [esp + 0x24]
test edx, edx
sete al
mov dword [esp + 0x100], eax
jmp dword [eax*4 + 0x43e6d0]
xor edx, 1
mov ecx, dword [esp + 0x2c]
xor ecx, 2
xor eax, eax
or ecx, edx
sete al
mov dword [esp + 0x24], 0
mov dword [esp + 0x28], 0
jmp dword [eax*4 + 0x43e7a8]
mov edi, dword [esp + 0x30]
movzx eax, byte [edi]
xor esi, esi
test al, al
je 0x411b11
lea ecx, [edi + 1]
xor esi, esi
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
shr al, 7
movzx eax, al
add esi, eax
inc esi
movzx eax, byte [ecx]
inc ecx
test al, al
jne 0x411b00
mov eax, esi
inc eax
lea eax, [esi + esi + 2]
jns 0x411b1f
mov eax, 0xffffffff
push eax
call fcn.004092e0
add esp, 4
mov ebx, dword [esp + 0xec]
mov dword [esp + 0x40], 0
lea ecx, [eax + esi*2]
mov esi, eax
mov dword [esp + 0x34], eax
mov dword [esp + 0x20], ecx
cmp eax, ecx
jae 0x411b8b
mov esi, dword [esp + 0x34]
test ebx, ebx
jle 0x411b8b
add ebx, edi
mov esi, dword [esp + 0x34]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp byte [edi], 0
je 0x411b8b
lea eax, [esp + 0x40]
push eax
push ebx
push edi
call fcn.0040d220
add esp, 0xc
movzx ecx, word [esp + 0x40]
mov word [esi], cx
add esi, 2
cmp esi, dword [esp + 0x20]
jae 0x411b8b
add edi, eax
cmp edi, ebx
jb 0x411b60
mov word [esi], 0
mov eax, dword [esp + 0xec]
mov ecx, eax
and ecx, 1
or eax, 1
lea edx, [eax + ecx]
add ecx, eax
add ecx, 0x18
lea eax, [edx*2 + 0x30]
test ecx, ecx
jns 0x411bb7
mov eax, 0xffffffff
push eax
call fcn.004092e0
add esp, 4
mov dword [esp + 0x24], eax
mov dword [esp + 0x40], 0x893b8b3c
mov dword [esp + 0x44], 0x853d8701
mov dword [esp + 0x48], 0x810f830a
mov dword [esp + 0x4c], 0x9d259f38
mov dword [esp + 0x50], 0x992e9b28
mov dword [esp + 0x54], 0x95659778
mov dword [esp + 0x58], 0x911a932f
mov dword [esp + 0x5c], 0x6dd36f2b
mov dword [esp + 0x60], 0x69d46b8c
mov dword [esp + 0x64], 0x65d667ef
mov dword [esp + 0x68], 0x61ef63db
mov dword [esp + 0x6c], 0x7d9e7fed
mov word [esp + 0x70], 0x7b7c
lea edx, [esp + 0x42]
mov byte [edx + 0x32], 0
mov word [edx + 0x30], 0
mov dword [esp + 0xc], 0
mov eax, dword [esp + 0xc]
cmp eax, 0x34
mov edi, dword [esp + 0x38]
mov ebx, dword [esp + 0x3c]
mov esi, dword [esp + 0x34]
ja 0x411c99
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0xc]
movzx ecx, byte [esp + ecx + 0x40]
add eax, 0xedd28063
xor eax, ecx
mov dword [esp + 0xac], eax
mov eax, dword [esp + 0xac]
add al, 0x11
mov ecx, dword [esp + 0xc]
mov byte [esp + ecx + 0x40], al
inc dword [esp + 0xc]
mov eax, dword [esp + 0xc]
cmp eax, 0x35
jb 0x411c60
movzx ecx, word [esp + 0x40]
mov eax, dword [esp + 0x24]
test cx, cx
je 0x411cc1
mov eax, dword [esp + 0x24]
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x411cb0
mov word [eax], 0
movzx ecx, word [esi]
test cx, cx
je 0x411cf1
mov edx, esi
add edx, 2
nop
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 0x411ce0
mov word [eax], 0
mov dword [esp + 0x28], 0
jmp dword [0x43e7b0]
push esi
call fcn.004092f0
add esp, 4
mov dword [esp + 0x28], 0
xor eax, eax
mov ecx, dword [esp + 0x2c]
test ecx, ecx
setle al
jmp dword [eax*4 + 0x43e7b8]
xor eax, eax
test ecx, ecx
sete al
jmp dword [eax*4 + 0x43e7d0]
mov eax, dword [esp + 0x100]
jmp dword [eax*4 + 0x43e7d8]
mov dword [esp + 0x80], 0
mov dword [esp + 0x7c], 0
mov dword [esp + 0x78], 0
mov dword [esp + 0x74], 0
mov dword [esp + 0x70], 0
mov dword [esp + 0x6c], 0
mov dword [esp + 0x68], 0
mov dword [esp + 0x64], 0
mov dword [esp + 0x60], 0
mov dword [esp + 0x5c], 0
mov dword [esp + 0x58], 0
mov dword [esp + 0x54], 0
mov dword [esp + 0x50], 0
mov dword [esp + 0x4c], 0
mov dword [esp + 0x48], 0
mov dword [esp + 0x44], 0
mov dword [esp + 0x40], 0x44
push 0xc9be8534
push dword [0x443f58]
call fcn.00437c90
add esp, 8
mov edx, dword [esp + 0x28]
lea ecx, [esp + 0xac]
push ecx
lea ecx, [esp + 0x44]
push ecx
push 0
push 0
push 0
push 0
push 0
push 0
push dword [esp + 0x44]
push edx
call eax
xor ecx, ecx
test eax, eax
setne cl
jmp dword [ecx*4 + 0x43e7e0]
mov eax, dword [esp + 0xac]
mov dword [esp + 8], 0x585b5a45
mov dword [esp + 4], 0
mov ecx, dword [esp + 4]
cmp ecx, 3
ja 0x411e75
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [esp + 4]
mov edx, dword [esp + 4]
movzx edx, byte [esp + edx + 8]
add ecx, 0x81c0ccef
xor ecx, edx
mov dword [esp + 0xc], ecx
mov ecx, dword [esp + 0xc]
add cl, 0x55
mov edx, dword [esp + 4]
mov byte [esp + edx + 8], cl
inc dword [esp + 4]
mov ecx, dword [esp + 4]
cmp ecx, 4
jb 0x411e40
mov ecx, dword [0x443f64]
test ecx, ecx
je case.0x411a97.70
mov edx, dword [esp + 8]
xor esi, esi
mov ebx, dword [0x443f68]
nop
cmp dword [ebx + esi*8], 0x625b6034
je 0x41208a
inc esi
cmp ecx, esi
jne 0x411e90
jmp case.0x411a97.70
mov dword [esp + 0xc], 0x8938
mov dword [esp + 0xac], 0
mov eax, dword [esp + 0xac]
cmp eax, 3
ja 0x411f1d
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp + 0xac]
mov ecx, dword [esp + 0xac]
movzx ecx, byte [esp + ecx + 0xc]
lea edx, [eax + ecx]
add eax, 0x22
and eax, ecx
add eax, eax
sub edx, eax
add edx, 0xc6ee1e22
mov dword [esp + 0x40], edx
mov eax, dword [esp + 0x40]
add al, 0x56
mov ecx, dword [esp + 0xac]
mov byte [esp + ecx + 0xc], al
inc dword [esp + 0xac]
mov eax, dword [esp + 0xac]
cmp eax, 4
jb 0x411ed0
lea eax, [esp + 0xc]
push eax
push dword [esp + 0x24]
call fcn.00402e20
add esp, 8
xor ecx, ecx
test eax, eax
setne cl
jmp dword [ecx*4 + 0x43e6d8]
jmp dword [0x43e6e8]
mov ecx, eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov edi, ecx
inc ecx
cmp byte [edi], 0
jne 0x411f50
xor ebx, ebx
cmp edi, eax
mov dword [esp + 0xa4], eax
jbe 0x411fa7
cmp byte [eax], 0
je 0x411fa7
xor ebx, ebx
mov esi, dword [esp + 0xa4]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov dword [esp + 0x40], 0
lea eax, [esp + 0x40]
push eax
push edi
push esi
call fcn.0040d220
add esp, 0xc
inc ebx
lea ecx, [esi + eax]
cmp ecx, edi
jae 0x411fa7
cmp byte [esi + eax], 0
mov esi, ecx
jne 0x411f80
mov eax, ebx
inc eax
lea eax, [ebx + ebx + 2]
jns 0x411fb5
mov eax, 0xffffffff
push eax
call fcn.004092e0
add esp, 4
mov dword [esp + 0x40], 0
lea ecx, [eax + ebx*2]
mov esi, eax
mov dword [esp + 0x34], eax
mov dword [esp + 0x24], ecx
cmp eax, ecx
mov ecx, dword [esp + 0xa4]
jae 0x412029
mov esi, dword [esp + 0x34]
cmp ecx, edi
jae 0x412029
mov esi, dword [esp + 0x34]
mov dword [esp + 0x28], ebx
nop
nop
cmp byte [ecx], 0
je 0x412029
lea eax, [esp + 0x40]
push eax
push edi
push ecx
mov ebx, ecx
call fcn.0040d220
add esp, 0xc
movzx ecx, word [esp + 0x40]
mov word [esi], cx
add esi, 2
cmp esi, dword [esp + 0x24]
jae 0x412025
add ebx, eax
cmp ebx, edi
mov ecx, ebx
mov ebx, dword [esp + 0x28]
jb 0x411ff0
jmp 0x412029
mov ebx, dword [esp + 0x28]
mov word [esi], 0
lea eax, [esp + 0x40]
push eax
push 0
push 0
push ebx
push dword [esp + 0x44]
push 0
call dword [0x443f60]
mov esi, dword [esp + 0x40]
lea eax, [esi + esi]
test esi, esi
jns 0x412054
mov eax, 0xffffffff
push eax
call fcn.004092e0
add esp, 4
mov ecx, eax
lea eax, [esp + 0x40]
push eax
push esi
mov edi, ecx
push ecx
push ebx
mov esi, dword [esp + 0x44]
push esi
push 0
call dword [0x443f60]
jmp dword [0x43e6e0]
push esi
call fcn.004092f0
add esp, 4
jmp 0x4131f8
mov ecx, dword [ebx + esi*8 + 4]
cmp ecx, edx
jne 0x4120a8
mov esi, dword [esp + 0x30]
xor eax, eax
test esi, esi
setne al
mov ebx, dword [esp + 0x3c]
jmp dword [eax*4 + 0x43e7f8]
push eax
push 1
push dword [0x443f6c]
push ecx
call fcn.00436330
add esp, 0x10
mov esi, dword [esp + 0x30]
xor eax, eax
test esi, esi
setne al
mov ebx, dword [esp + 0x3c]
jmp dword [eax*4 + 0x43e7f8]
mov dword [esp + 0xc], 0x910e9fc2
mov dword [esp + 0x10], 0x95c19305
mov word [esp + 0x14], 0x9794
lea eax, [esp + 0xe]
mov word [eax + 0xc], 0
mov dword [eax + 8], 0
mov dword [esp + 8], 0
mov eax, dword [esp + 8]
cmp eax, 0xf
ja 0x41214f
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp + 8]
mov ecx, dword [esp + 8]
movzx ecx, byte [esp + ecx + 0xc]
lea edx, [eax + 0xa5]
add eax, ecx
and edx, ecx
add edx, edx
sub eax, edx
add eax, 0x20f2dea5
mov dword [esp + 4], eax
mov eax, dword [esp + 4]
add al, 0xc7
mov ecx, dword [esp + 8]
mov byte [esp + ecx + 0xc], al
inc dword [esp + 8]
mov eax, dword [esp + 8]
cmp eax, 0x10
jb 0x412110
mov eax, edi
add eax, 0xfffffffe
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp word [eax + 2], 0
lea eax, [eax + 2]
jne 0x412160
movzx ecx, word [esp + 0xc]
test cx, cx
je 0x4131f3
xor edx, edx
nop
nop
nop
nop
nop
nop
mov word [eax + edx], cx
movzx ecx, word [esp + edx + 0xe]
add edx, 2
test cx, cx
jne 0x412180
jmp 0x4131f1
mov eax, 1
mov dword [esp + 0x28], 0
mov dword [esp + 0x2c], 0
mov edx, dword [esp + 0xa4]
jmp dword [edx*4 + 0x43e790]
mov ebx, dword [esp + 0x3c]
lea esi, [esp + 0x42]
jmp dword [eax*4 + 0x43e7a0]
xor eax, eax
mov ecx, dword [esp + 0x2c]
test ecx, ecx
setle al
jmp dword [eax*4 + 0x43e7b8]
xor eax, eax
cmp ecx, 2
setl al
jmp dword [eax*4 + 0x43e7c0]
sete al
movzx eax, al
jmp dword [eax*4 + 0x43e7c8]
mov dword [esp + 0x80], 0
mov dword [esp + 0x7c], 0
mov dword [esp + 0x78], 0
mov dword [esp + 0x74], 0
mov dword [esp + 0x70], 0
mov dword [esp + 0x6c], 0
mov dword [esp + 0x68], 0
mov dword [esp + 0x64], 0
mov dword [esp + 0x60], 0
mov dword [esp + 0x5c], 0
mov dword [esp + 0x58], 0
mov dword [esp + 0x54], 0
mov dword [esp + 0x50], 0
mov dword [esp + 0x4c], 0
mov dword [esp + 0x48], 0
mov dword [esp + 0x44], 0
mov dword [esp + 0x40], 0x44
push 0xc9be8534
push dword [0x443f58]
call fcn.00437c90
add esp, 8
lea ecx, [esp + 0xac]
push ecx
lea ecx, [esp + 0x44]
push ecx
push 0
push 0
push 0x8000000
push 0
push 0
push 0
push dword [esp + 0x44]
push 0
call eax
xor ecx, ecx
test eax, eax
setne cl
jmp dword [ecx*4 + 0x43e7f0]
mov eax, dword [esp + 0xac]
mov dword [esp + 8], 0x585b5a45
mov dword [esp + 4], 0
mov ecx, dword [esp + 4]
cmp ecx, 3
ja 0x412325
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [esp + 4]
mov edx, dword [esp + 4]
movzx edx, byte [esp + edx + 8]
add ecx, 0x81c0ccef
xor ecx, edx
mov dword [esp + 0xc], ecx
mov ecx, dword [esp + 0xc]
add cl, 0x55
mov edx, dword [esp + 4]
mov byte [esp + edx + 8], cl
inc dword [esp + 4]
mov ecx, dword [esp + 4]
cmp ecx, 4
jb 0x4122f0
mov ecx, dword [0x443f64]
test ecx, ecx
je case.0x411a97.74
mov edx, dword [esp + 8]
xor esi, esi
mov edi, dword [0x443f68]
nop
cmp dword [edi + esi*8], 0x625b6034
je 0x412520
inc esi
cmp ecx, esi
jne 0x412340
jmp case.default.0x4125f3
push 0x46483752
push dword [0x443f58]
call fcn.00437c90
add esp, 8
push 0
push 0
push dword [esp + 0x38]
push 0x41a1a0
push 0
push 0
call eax
xor ecx, ecx
test eax, eax
setne cl
jmp dword [ecx*4 + 0x43e7e8]
mov esi, dword [esp + 0x30]
xor eax, eax
test esi, esi
setne al
jmp dword [eax*4 + 0x43e7f8]
mov dword [esp + 0x44], 0xffffffff
mov dword [esp + 0x40], 0xb8797400
mov dword [esp + 4], 0x585b5a45
mov dword [esp + 0xc], 0
mov ecx, dword [esp + 0xc]
cmp ecx, 3
ja 0x41240b
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0xc]
movzx edx, byte [esp + edx + 4]
add ecx, 0x81c0ccef
xor ecx, edx
mov dword [esp + 0xac], ecx
mov ecx, dword [esp + 0xac]
add cl, 0x55
mov edx, dword [esp + 0xc]
mov byte [esp + edx + 4], cl
inc dword [esp + 0xc]
mov ecx, dword [esp + 0xc]
cmp ecx, 4
jb 0x4123d0
mov ecx, dword [0x443f64]
test ecx, ecx
je 0x412465
mov edx, dword [esp + 4]
xor esi, esi
mov edi, dword [0x443f68]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp dword [edi + esi*8], 0x7e28bda7
je 0x412440
inc esi
cmp ecx, esi
jne 0x412430
jmp 0x412465
mov ecx, dword [edi + esi*8 + 4]
cmp ecx, edx
je 0x412465
lea edx, [esp + 0x40]
push edx
push 0
push eax
push 3
push dword [0x443f6c]
push ecx
mov esi, eax
call fcn.00436330
mov eax, esi
add esp, 0x18
mov dword [esp + 4], 0x585b5a45
mov dword [esp + 0xc], 0
mov ecx, dword [esp + 0xc]
cmp ecx, 3
ja 0x4124bb
nop
nop
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0xc]
movzx edx, byte [esp + edx + 4]
add ecx, 0x81c0ccef
xor ecx, edx
mov dword [esp + 0xac], ecx
mov ecx, dword [esp + 0xac]
add cl, 0x55
mov edx, dword [esp + 0xc]
mov byte [esp + edx + 4], cl
inc dword [esp + 0xc]
mov ecx, dword [esp + 0xc]
cmp ecx, 4
jb 0x412480
mov ecx, dword [0x443f64]
test ecx, ecx
je case.default.0x412519
mov edx, dword [esp + 4]
xor esi, esi
mov edi, dword [0x443f68]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp dword [edi + esi*8], 0x625b6034
je 0x4124f0
inc esi
cmp ecx, esi
jne 0x4124e0
jmp case.default.0x412519
mov ecx, dword [edi + esi*8 + 4]
cmp ecx, edx
je case.default.0x412519
push eax
push 1
push dword [0x443f6c]
push ecx
call fcn.00436330
add esp, 0x10
mov esi, dword [esp + 0x30]
xor eax, eax
test esi, esi
setne al
mov edi, dword [esp + 0x38]
jmp dword [eax*4 + 0x43e7f8]
mov ecx, dword [edi + esi*8 + 4]
cmp ecx, edx
jne case.default.0x41253b
mov edi, dword [esp + 0x38]
mov esi, dword [esp + 0x30]
xor eax, eax
test esi, esi
setne al
jmp dword [eax*4 + 0x43e7f8]
jmp dword [0x43e800]
push esi
call fcn.004340c0
add esp, 4
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
push esi
call fcn.004340c0
add esp, 4
jmp dword [0x43e808]
xor eax, eax
mov ecx, dword [esp + 0x28]
test ecx, ecx
sete al
jmp dword [eax*4 + 0x43e810]
push ecx
call fcn.004092f0
add esp, 4
xor eax, eax
cmp dword [esp + 0x24], 0
sete al
lea esi, [esp + 0x42]
jmp dword [eax*4 + 0x43e818]
xor eax, eax
cmp dword [esp + 0x24], 0
sete al
lea esi, [esp + 0x42]
jmp dword [eax*4 + 0x43e818]
push dword [esp + 0x24]
call fcn.004092f0
add esp, 4
mov eax, dword [case.0x411695.0]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp eax
push eax
push 1
push dword [0x443f6c]
push ecx
call fcn.00436330
add esp, 0x10
mov esi, dword [esp + 0x30]
xor eax, eax
test esi, esi
setne al
mov edi, dword [esp + 0x38]
jmp dword [eax*4 + 0x43e7f8]
mov edx, dword [esp + 0x28]
mov ecx, edx
mov eax, ecx
add ecx, 2
cmp word [eax], 0
jne 0x412600
mov ecx, edx
not ecx
and ecx, eax
add ecx, ecx
xor eax, edx
sub ecx, eax
lea eax, [ecx + 0x3c]
cmp ecx, 0xffffffc3
lea esi, [esp + 0x42]
jge 0x412628
mov eax, 0xffffffff
push eax
call fcn.004092e0
add esp, 4
mov dword [esp + 0x24], eax
mov dword [esp + 0xac], 0xf7f609e6
mov dword [esp + 0xb0], 0
mov dword [esp + 0xc], 0
mov eax, dword [esp + 0xc]
cmp eax, 7
ja 0x4126a9
nop
nop
nop
nop
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0xc]
movzx ecx, byte [esp + ecx + 0xac]
lea edx, [eax + ecx]
add edx, 0xc1acddfe
add eax, 0xc1acddfe
not ecx
or eax, ecx
sub ecx, eax
lea eax, [edx + ecx*2]
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x40]
add al, 0xa
mov ecx, dword [esp + 0xc]
mov byte [esp + ecx + 0xac], al
inc dword [esp + 0xc]
mov eax, dword [esp + 0xc]
cmp eax, 8
jb 0x412660
mov dword [esp + 0x40], 0x21972794
mov dword [esp + 0x44], 0x3d9d23a9
mov dword [esp + 0x48], 0x39b33f8e
mov dword [esp + 0x4c], 0x35853b80
mov dword [esp + 0x50], 0x31823780
mov dword [esp + 0x54], 0xdc533d0
mov dword [esp + 0x58], 0x9860fb3
mov dword [esp + 0x5c], 0x5b70bb7
mov dword [esp + 0x60], 0x1a407e4
mov dword [esp + 0x64], 0x1db2038b
mov dword [esp + 0x68], 0x19931fbf
mov dword [esp + 0x6c], 0x15fa1b95
mov dword [esp + 0x70], 0x11a817e3
mov dword [esp + 0x74], 0xedf013f0
mov word [esp + 0x78], 0xefec
mov word [esi + 0x3c], 0
mov dword [esi + 0x38], 0
mov dword [esp + 4], 0
mov eax, dword [esp + 4]
cmp eax, 0x3f
mov ebx, dword [esp + 0x3c]
ja 0x412783
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 + 0x40]
add eax, 0xa8fc7949
xor eax, ecx
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0xc]
add al, 0x93
mov ecx, dword [esp + 4]
mov byte [esp + ecx + 0x40], al
inc dword [esp + 4]
mov eax, dword [esp + 4]
cmp eax, 0x40
jb 0x412750
movzx ecx, word [esp + 0x40]
mov eax, dword [esp + 0x24]
test cx, cx
je 0x4127b1
mov edx, esi
mov eax, dword [esp + 0x24]
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 0x4127a0
mov word [eax], 0
mov edx, dword [esp + 0x28]
movzx ecx, word [edx]
test cx, cx
je 0x4127e1
add edx, 2
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 0x4127d0
mov word [eax], 0
movzx ecx, word [esp + 0xac]
test cx, cx
je 0x412811
lea edx, [esp + 0xae]
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x412800
mov word [eax], 0
mov eax, 1
jmp dword [eax*4 + 0x43e7a0]
lea esi, [esp + 0x42]
mov ebx, dword [esp + 0x28]
jmp dword [0x43e740]
mov word [esp + 0x40], 0xa996
mov byte [esp + 0x42], 0x3a
mov dword [esp + 0x43], 0
mov dword [esp + 0xc], 0
mov eax, dword [esp + 0xc]
cmp eax, 6
ja 0x412899
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0xc]
movzx ecx, byte [esp + ecx + 0x40]
add eax, 0x42b7fd4b
xor eax, ecx
mov dword [esp + 0xac], eax
mov eax, dword [esp + 0xac]
add al, 0x89
mov ecx, dword [esp + 0xc]
mov byte [esp + ecx + 0x40], al
inc dword [esp + 0xc]
mov eax, dword [esp + 0xc]
cmp eax, 7
jb 0x412860
lea eax, [esp + 0x40]
push eax
push dword [esp + 0x24]
call fcn.00402e20
add esp, 8
mov word [esp + 0x40], 0xe3f1
mov byte [esp + 0x42], 0x92
mov byte [esi + 5], 0
mov dword [esi + 1], 0
mov dword [esp + 0xc], 0
mov eax, dword [esp + 0xc]
cmp eax, 7
ja 0x412919
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0xc]
movzx ecx, byte [esp + ecx + 0x40]
add eax, 0xd4a1709c
xor eax, ecx
mov dword [esp + 0xac], eax
mov eax, dword [esp + 0xac]
add al, 0xf4
mov ecx, dword [esp + 0xc]
mov byte [esp + ecx + 0x40], al
inc dword [esp + 0xc]
mov eax, dword [esp + 0xc]
cmp eax, 8
jb 0x4128e0
lea eax, [esp + 0x40]
push eax
push dword [esp + 0x24]
call fcn.00402e20
add esp, 8
nop
nop
nop
nop
nop
nop
mov word [esp + 0x40], 0xa996
mov byte [esp + 0x42], 0x3a
mov dword [esp + 0x43], 0
mov dword [esp + 0xc], 0
mov eax, dword [esp + 0xc]
cmp eax, 6
ja 0x412999
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0xc]
movzx ecx, byte [esp + ecx + 0x40]
add eax, 0x42b7fd4b
xor eax, ecx
mov dword [esp + 0xac], eax
mov eax, dword [esp + 0xac]
add al, 0x89
mov ecx, dword [esp + 0xc]
mov byte [esp + ecx + 0x40], al
inc dword [esp + 0xc]
mov eax, dword [esp + 0xc]
cmp eax, 7
jb 0x412960
lea eax, [esp + 0x40]
push eax
push dword [esp + 0x24]
call fcn.00402e20
add esp, 8
mov dword [esp + 0x2c], eax
mov word [esp + 0x40], 0xe3f1
mov byte [esp + 0x42], 0x92
mov byte [esi + 5], 0
mov dword [esi + 1], 0
mov dword [esp + 0xc], 0
mov eax, dword [esp + 0xc]
cmp eax, 7
ja 0x412a19
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0xc]
movzx ecx, byte [esp + ecx + 0x40]
add eax, 0xd4a1709c
xor eax, ecx
mov dword [esp + 0xac], eax
mov eax, dword [esp + 0xac]
add al, 0xf4
mov ecx, dword [esp + 0xc]
mov byte [esp + ecx + 0x40], al
inc dword [esp + 0xc]
mov eax, dword [esp + 0xc]
cmp eax, 8
jb 0x4129e0
lea eax, [esp + 0x40]
push eax
push dword [esp + 0x24]
call fcn.00402e20
add esp, 8
mov edx, eax
xor eax, eax
nop
nop
cmp word [ebx + eax], 0
lea eax, [eax + 2]
jne 0x412a30
jmp dword [0x43e74c]
lea ecx, [ebx + eax]
add ecx, 0xfffffffe
mov eax, ebx
not eax
and eax, ecx
add eax, eax
xor ecx, ebx
sub eax, ecx
sar eax, 1
xor ecx, ecx
cmp dword [esp + 0x2c], 0
setne cl
xor ebx, ebx
mov dword [esp + 0x20], ecx
jmp dword [ecx*4 + 0x43e750]
mov esi, edx
mov edx, dword [esp + 0x2c]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, edx
inc edx
cmp byte [ecx], 0
jne 0x412a80
sub ecx, dword [esp + 0x2c]
mov edx, ecx
and edx, 1
xor ecx, 1
lea ebx, [ecx + edx*2]
mov ecx, dword [case.0x411a97.34]
mov edx, esi
nop
jmp ecx
mov ecx, dword [case.0x411a97.43]
nop
nop
nop
nop
nop
nop
nop
nop
jmp ecx
xor ecx, ecx
test edx, edx
setne cl
mov dword [esp + 0xa4], ecx
mov dword [esp + 0x34], edx
jmp dword [ecx*4 + 0x43e778]
xor esi, esi
jmp 0x412aeb
mov ecx, edx
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov esi, ecx
inc ecx
cmp byte [esi], 0
jne 0x412ae0
sub esi, edx
inc esi
add eax, 9
mov ecx, ebx
and ecx, eax
xor eax, ebx
lea eax, [eax + ecx*2]
mov ecx, esi
and ecx, eax
xor eax, esi
lea edx, [eax + ecx*2]
lea ecx, [eax + ecx*2]
inc ecx
lea eax, [edx*2 + 2]
test ecx, ecx
jns 0x412b14
mov eax, 0xffffffff
mov dword [esp + 0xf4], esi
push eax
call fcn.004092e0
add esp, 4
mov dword [esp + 0x24], eax
mov dword [esp + 0x40], 0xb931bb12
mov dword [esp + 0x44], 0xbddabf2a
mov dword [esp + 0x48], 0xb12eb320
mov dword [esp + 0x4c], 0xb5e0b7e5
mov dword [esp + 0x50], 0xabb4
mov dword [esp + 0xc], 0
mov eax, dword [esp + 0xc]
cmp eax, 0x13
ja 0x412ba9
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0xc]
movzx ecx, byte [esp + ecx + 0x40]
add eax, 0x26108c1f
xor eax, ecx
mov dword [esp + 0xac], eax
mov eax, dword [esp + 0xac]
add al, 0x65
mov ecx, dword [esp + 0xc]
mov byte [esp + ecx + 0x40], al
inc dword [esp + 0xc]
mov eax, dword [esp + 0xc]
cmp eax, 0x14
jb 0x412b70
movzx eax, word [esp + 0x40]
mov esi, dword [esp + 0x24]
test ax, ax
je 0x412bd1
lea ecx, [esp + 0x42]
mov esi, dword [esp + 0x24]
nop
mov word [esi], ax
add esi, 2
movzx eax, word [ecx]
add ecx, 2
test ax, ax
jne 0x412bc0
mov dword [esi], 0x220020
add esi, 4
mov ecx, dword [esp + 0x28]
movzx eax, word [ecx]
test ax, ax
mov dword [esp + 0xfc], ebx
je 0x412c01
add ecx, 2
mov word [esi], ax
add esi, 2
movzx eax, word [ecx]
add ecx, 2
test ax, ax
jne 0x412bf0
lea ebx, [esi + 2]
mov word [esi], 0x22
jmp dword [0x43e780]
push dword [esp + 0x28]
call fcn.004092f0
add esp, 4
mov ecx, dword [esp + 0x34]
mov eax, dword [esp + 0x20]
jmp dword [eax*4 + 0x43e788]
mov ecx, dword [esp + 0x34]
mov eax, dword [esp + 0x20]
jmp dword [eax*4 + 0x43e788]
mov word [ebx], 0x2c
mov ebx, dword [esp + 0x2c]
lea edi, [ebx - 1]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp byte [edi + 1], 0
lea edi, [edi + 1]
jne 0x412c50
lea eax, [esi + 4]
mov dword [esp + 0x20], eax
mov dword [esp + 0x40], 0
mov eax, dword [esp + 0xfc]
cmp eax, 2
jl 0x412ccb
cmp ebx, edi
jae 0x412ccb
lea eax, [esi + eax*2]
add eax, 2
mov dword [esp + 0x28], eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp byte [ebx], 0
je 0x412ccb
mov esi, ecx
lea eax, [esp + 0x40]
push eax
push edi
push ebx
call fcn.0040d220
add esp, 0xc
movzx ecx, word [esp + 0x40]
mov edx, dword [esp + 0x20]
mov word [edx], cx
add edx, 2
mov dword [esp + 0x20], edx
cmp edx, dword [esp + 0x28]
jae 0x412cc9
add ebx, eax
cmp ebx, edi
mov ecx, esi
jb 0x412c90
jmp 0x412ccb
mov ecx, esi
mov ebx, dword [esp + 0x20]
mov word [ebx], 0
mov eax, 1
mov dword [esp + 0x28], 0
mov dword [esp + 0x2c], 0
mov edi, dword [esp + 0x38]
mov edx, dword [esp + 0xa4]
jmp dword [edx*4 + 0x43e790]
mov word [ebx], 0x2c
lea edi, [ecx - 1]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp byte [edi + 1], 0
lea edi, [edi + 1]
jne 0x412d10
lea esi, [ebx + 2]
mov dword [esp + 0x40], 0
cmp dword [esp + 0xf4], 2
jl 0x412d6f
cmp ecx, edi
jae 0x412d6f
mov eax, dword [esp + 0xf4]
lea eax, [ebx + eax*2]
mov dword [esp + 0x20], eax
cmp byte [ecx], 0
je 0x412d6f
lea eax, [esp + 0x40]
push eax
push edi
push ecx
mov ebx, ecx
call fcn.0040d220
add esp, 0xc
movzx ecx, word [esp + 0x40]
mov word [esi], cx
add esi, 2
cmp esi, dword [esp + 0x20]
jae 0x412d6f
add ebx, eax
cmp ebx, edi
mov ecx, ebx
jb 0x412d40
mov word [esi], 0
mov dword [esp + 0x28], 0
mov dword [esp + 0x2c], 0
mov edi, dword [esp + 0x38]
mov ebx, dword [esp + 0x3c]
lea esi, [esp + 0x42]
mov eax, 1
jmp dword [eax*4 + 0x43e7a0]
push dword [esp + 0x30]
mov esi, eax
call fcn.004340c0
add esp, 4
mov dword [esp + 0x30], 0
not esi
shr esi, 0x1f
mov dword [esp + 0x24], 0
xor eax, eax
mov edi, dword [esp + 0x38]
jmp dword [esi*4 + 0x43e730]
xor eax, eax
mov ecx, dword [esp + 0x2c]
cmp ecx, 1
sete al
jmp dword [eax*4 + 0x43e738]
mov eax, ecx
xor ecx, ecx
cmp eax, 2
sete cl
mov eax, 1
mov dword [esp + 0x24], 0
jmp dword [ecx*4 + 0x43e798]
mov dword [esp + 0xc], 0x41aa4792
mov dword [esp + 0x10], 0x4dd643d4
mov word [esp + 0x14], 0x4f4c
mov dword [esp + 0x16], 0
mov dword [esp + 8], 0
mov eax, dword [esp + 8]
cmp eax, 0xd
ja 0x412e63
nop
nop
nop
mov eax, dword [esp + 8]
mov ecx, dword [esp + 8]
movzx ecx, byte [esp + ecx + 0xc]
add eax, 0x82d49f11
xor eax, ecx
mov dword [esp + 4], eax
mov eax, dword [esp + 4]
add al, 0xab
mov ecx, dword [esp + 8]
mov byte [esp + ecx + 0xc], al
inc dword [esp + 8]
mov eax, dword [esp + 8]
cmp eax, 0xe
jb 0x412e30
mov eax, edi
add eax, 0xfffffffe
nop
nop
nop
nop
nop
nop
nop
nop
cmp word [eax + 2], 0
lea eax, [eax + 2]
jne 0x412e70
movzx ecx, word [esp + 0xc]
test cx, cx
je 0x4131f3
xor edx, edx
nop
nop
nop
nop
nop
nop
mov word [eax + edx], cx
movzx ecx, word [esp + edx + 0xe]
add edx, 2
test cx, cx
jne 0x412e90
jmp 0x4131f1
push 0
push dword [esp + 0xf0]
push dword [esp + 0x38]
push dword [esp + 0x14]
call fcn.00438ce0
add esp, 0x10
mov eax, dword [esp + 8]
mov dword [esp + 0xc], 0x585b5a45
mov dword [esp + 0xac], 0
mov ecx, dword [esp + 0xac]
cmp ecx, 3
ja 0x412f34
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [esp + 0xac]
mov edx, dword [esp + 0xac]
movzx edx, byte [esp + edx + 0xc]
add ecx, 0x81c0ccef
xor ecx, edx
mov dword [esp + 0x40], ecx
mov ecx, dword [esp + 0x40]
add cl, 0x55
mov edx, dword [esp + 0xac]
mov byte [esp + edx + 0xc], cl
inc dword [esp + 0xac]
mov ecx, dword [esp + 0xac]
cmp ecx, 4
jb 0x412ef0
mov ecx, dword [0x443f64]
test ecx, ecx
je case.0x411a97.23
mov edx, dword [esp + 0xc]
xor esi, esi
mov ebx, dword [0x443f68]
nop
nop
cmp dword [ebx + esi*8], 0x625b6034
je 0x412f63
inc esi
cmp ecx, esi
jne 0x412f50
jmp case.0x411a97.23
mov ecx, dword [ebx + esi*8 + 4]
cmp ecx, edx
je case.0x411a97.23
push eax
push 1
push dword [0x443f6c]
push ecx
call fcn.00436330
add esp, 0x10
jmp case.0x411a97.23
call fcn.00409b40
mov ecx, eax
mov edx, 0x38e38e39
imul edx
mov eax, edx
shr eax, 0x1f
sar edx, 3
add edx, eax
shl edx, 2
lea eax, [edx + edx*8]
neg eax
movsx eax, byte [ecx + eax + str.0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ]
mov word [ebx], ax
add ebx, 2
inc edi
xor eax, eax
cmp edi, esi
setb al
jmp dword [eax*4 + 0x43e6f8]
mov word [ebx], 0
mov dword [esp + 0xc], 0x7f0a795d
mov dword [esp + 0x10], 0x632f7d39
mov dword [esp + 0x14], 0x67436110
mov dword [esp + 0x18], 0x6b6a6518
mov dword [esp + 0x1c], 0
mov dword [esp + 4], 0
mov eax, dword [esp + 4]
cmp eax, 0x13
ja 0x41304c
nop
nop
nop
nop
nop
mov eax, dword [esp + 4]
mov ecx, dword [esp + 4]
movzx ecx, byte [esp + ecx + 0xc]
lea edx, [eax + 0x6a]
and edx, ecx
add eax, ecx
add edx, edx
sub eax, edx
add eax, 0x970a266a
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x40]
add al, 0xee
mov ecx, dword [esp + 4]
mov byte [esp + ecx + 0xc], al
inc dword [esp + 4]
mov eax, dword [esp + 4]
cmp eax, 0x14
jb 0x413010
movzx eax, word [esp + 0xc]
lea esi, [esp + 0x40]
test ax, ax
je 0x413081
lea ecx, [esp + 0xe]
lea esi, [esp + 0x40]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [esi], ax
add esi, 2
movzx eax, word [ecx]
add ecx, 2
test ax, ax
jne 0x413070
mov word [esi], 0
movzx eax, word [esp + 0xac]
test ax, ax
je 0x4130b1
lea ecx, [esp + 0xae]
nop
nop
nop
nop
nop
nop
mov word [esi], ax
add esi, 2
movzx eax, word [ecx]
add ecx, 2
test ax, ax
jne 0x4130a0
mov word [esi], 0
lea eax, [esp + 0x40]
sub esi, eax
sar esi, 1
lea ecx, [esp + 0xf8]
push ecx
push 0
push 0
push esi
push eax
push 0
call dword [0x443f60]
mov ebx, dword [esp + 0xf8]
mov eax, ebx
and eax, 4
mov ecx, ebx
xor ecx, 4
lea ecx, [ecx + eax*2]
lea eax, [ecx + ecx]
test ecx, ecx
jns 0x4130f4
mov eax, 0xffffffff
push eax
call fcn.004092e0
add esp, 4
mov ecx, eax
lea eax, [esp + 0xf8]
push eax
push ebx
mov edi, ecx
push ecx
push esi
lea eax, [esp + 0x50]
push eax
push 0
call dword [0x443f60]
xor eax, eax
mov ecx, dword [esp + 0x2c]
test ecx, ecx
sete al
jmp dword [eax*4 + 0x43e700]
xor eax, eax
cmp ecx, 1
sete al
jmp dword [eax*4 + 0x43e708]
xor eax, eax
cmp ecx, 2
sete al
jmp dword [eax*4 + 0x43e710]
jmp 0x4131f8
mov dword [esp + 0xc], 0x69c16bb6
mov dword [esp + 0x10], 0x6dc56ff0
mov dword [esp + 0x14], 0x536c
mov dword [esp + 8], 0
mov eax, dword [esp + 8]
cmp eax, 0xb
ja 0x4131b3
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp + 8]
mov ecx, dword [esp + 8]
movzx ecx, byte [esp + ecx + 0xc]
add eax, 0xc743e497
xor eax, ecx
mov dword [esp + 4], eax
mov eax, dword [esp + 4]
add al, 0xd
mov ecx, dword [esp + 8]
mov byte [esp + ecx + 0xc], al
inc dword [esp + 8]
mov eax, dword [esp + 8]
cmp eax, 0xc
jb 0x413180
mov eax, edi
add eax, 0xfffffffe
nop
nop
nop
nop
nop
nop
nop
nop
cmp word [eax + 2], 0
lea eax, [eax + 2]
jne 0x4131c0
movzx ecx, word [esp + 0xc]
test cx, cx
je 0x4131f3
xor edx, edx
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax + edx], cx
movzx ecx, word [esp + edx + 0xe]
add edx, 2
test cx, cx
jne 0x4131e0
add eax, edx
mov word [eax], 0
push 0x80
push 0x60
push 5
push 0
push 0x100002
lea eax, [esp + 0x1c]
push eax
mov dword [esp + 0x40], edi
push edi
call fcn.00438550
add esp, 0x1c
mov ecx, eax
not ecx
shr ecx, 0x1f
jmp dword [ecx*4 + 0x43e718]
jmp dword [0x43e724]
jmp dword [0x43e728]
push 0
push dword [esp + 0xf0]
push dword [esp + 0x38]
push dword [esp + 0x14]
call fcn.00438ce0
add esp, 0x10
mov ecx, dword [esp + 8]
mov dword [esp + 0xc], 0x585b5a45
mov dword [esp + 0xac], 0
mov edx, dword [esp + 0xac]
cmp edx, 3
ja 0x4132c4
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov edx, dword [esp + 0xac]
mov esi, dword [esp + 0xac]
movzx esi, byte [esp + esi + 0xc]
add edx, 0x81c0ccef
xor edx, esi
mov dword [esp + 0x40], edx
mov edx, dword [esp + 0x40]
add dl, 0x55
mov esi, dword [esp + 0xac]
mov byte [esp + esi + 0xc], dl
inc dword [esp + 0xac]
mov edx, dword [esp + 0xac]
cmp edx, 4
jb 0x413280
mov edx, dword [0x443f64]
test edx, edx
je 0x413230
mov esi, dword [esp + 0xc]
xor ebx, ebx
mov edi, dword [0x443f68]
nop
nop
cmp dword [edi + ebx*8], 0x625b6034
je 0x413300
inc ebx
cmp edx, ebx
jne 0x4132e0
jmp 0x413230
mov edx, dword [edi + ebx*8 + 4]
cmp edx, esi
je 0x413230
push ecx
push 1
push dword [0x443f6c]
push edx
mov esi, eax
call fcn.00436330
mov eax, esi
add esp, 0x10
jmp 0x413230
mov dword [esp + 0x40], 0x54d4c9c8
lea eax, [esp + 0x42]
mov byte [eax + 4], 0
mov word [eax + 2], 0
mov dword [esp + 4], 0
mov eax, dword [esp + 4]
cmp eax, 6
ja 0x413383
nop
nop
mov eax, dword [esp + 4]
mov ecx, dword [esp + 4]
movzx ecx, byte [esp + ecx + 0x40]
add eax, 0xf74fbe4e
xor eax, ecx
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0xc]
add al, 0x7a
mov ecx, dword [esp + 4]
mov byte [esp + ecx + 0x40], al
inc dword [esp + 4]
mov eax, dword [esp + 4]
cmp eax, 7
jb 0x413350
mov eax, dword [esp + 0x40]
push dword [eax + 0x14]
call fcn.00409b30
add esp, 4
call fcn.00409b40
jmp dword [0x43e6f0]
mov esi, eax
and esi, 0xf
or esi, 0x10
xor edi, edi
xor eax, eax
cmp edi, esi
setb al
lea ebx, [esp + 0xac]
jmp dword [eax*4 + 0x43e6f8]
mov dword [esp + 0x40], 0x54d4c9c8
lea eax, [esp + 0x42]
mov byte [eax + 4], 0
mov word [eax + 2], 0
mov dword [esp + 4], 0
mov eax, dword [esp + 4]
cmp eax, 6
ja 0x413423
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 + 0x40]
add eax, 0xf74fbe4e
xor eax, ecx
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0xc]
add al, 0x7a
mov ecx, dword [esp + 4]
mov byte [esp + ecx + 0x40], al
inc dword [esp + 4]
mov eax, dword [esp + 4]
cmp eax, 7
jb 0x4133f0
mov eax, dword [esp + 0x40]
push dword [eax + 0x14]
call fcn.00409b30
add esp, 4
call fcn.00409b40
jmp case.0x411a97.8
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
xor ebx, ebx
jmp dword [0x43e8d8]
push dword [esp + 0x14]
call fcn.004092f0
add esp, 4
mov eax, ebx
add esp, 0x18
pop esi
pop edi
pop ebx
pop ebp
ret
lea eax, [esp + 4]
push 0
push eax
push dword [esp + 0x10]
call fcn.00438a60
add esp, 0xc
not eax
shr eax, 0x1f
xor ebx, ebx
jmp dword [eax*4 + 0x43e898]
mov esi, dword [esp + 4]
push esi
call fcn.004092e0
add esp, 4
push 0
push esi
mov dword [esp + 0x18], eax
push eax
push dword [esp + 0x14]
call fcn.00438b40
add esp, 0x10
not eax
shr eax, 0x1f
xor ebx, ebx
jmp dword [eax*4 + 0x43e8a0]
mov ecx, dword [esp + 0x30]
mov esi, dword [ecx]
mov eax, 0xfffffffe
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp word [esi + eax + 2], 0
lea eax, [eax + 2]
jne 0x413770
mov ebx, dword [ecx + 8]
mov ecx, 0xfffffffe
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp word [ebx + ecx + 2], 0
lea ecx, [ecx + 2]
jne 0x413790
sar eax, 1
sar ecx, 1
add edi, eax
lea eax, [ecx + edi]
add eax, 3
mov ecx, dword [case.0x4120c9.21]
nop
nop
nop
jmp ecx
test eax, eax
jns 0x4137bd
mov eax, 0xffffffff
jmp 0x4137bf
add eax, eax
push eax
call fcn.004092e0
add esp, 4
mov edi, eax
movzx ecx, word [esi]
test cx, cx
je 0x4137f1
add esi, 2
mov eax, edi
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [esi]
add esi, 2
test cx, cx
jne 0x4137e0
mov word [eax], 0x2f
add eax, 2
movzx ecx, word [ebx]
test cx, cx
je 0x413821
add ebx, 2
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 0x413810
mov word [eax], 0x2f
add eax, 2
movzx ecx, word [ebp]
test cx, cx
je 0x413852
add ebp, 2
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [ebp]
add ebp, 2
test cx, cx
jne 0x413840
mov word [eax], 0
mov ecx, dword [esp + 0x2c]
push dword [esp + 4]
push dword [esp + 0x14]
push edi
call fcn.00409c80
mov ebx, eax
jmp dword [0x43e8b8]
push edi
call fcn.004092f0
add esp, 4
jmp dword [0x43e8d0]
push dword [esp + 0x10]
call fcn.004092f0
add esp, 4
mov eax, dword [esp + 8]
mov dword [esp + 0xc], 0x585b5a45
mov dword [esp], 0
mov ecx, dword [esp]
cmp ecx, 3
ja 0x4138e0
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [esp]
mov edx, dword [esp]
movzx edx, byte [esp + edx + 0xc]
add ecx, 0x81c0ccef
xor ecx, edx
mov dword [esp + 4], ecx
mov ecx, dword [esp + 4]
add cl, 0x55
mov edx, dword [esp]
mov byte [esp + edx + 0xc], cl
inc dword [esp]
mov ecx, dword [esp]
cmp ecx, 4
jb 0x4138b0
mov ecx, dword [0x443f64]
test ecx, ecx
je 0x413918
mov edx, dword [esp + 0xc]
xor esi, esi
mov edi, dword [0x443f68]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp dword [edi + esi*8], 0x625b6034
je 0x413910
inc esi
cmp ecx, esi
jne 0x413900
jmp 0x413918
mov ecx, dword [edi + esi*8 + 4]
cmp ecx, edx
jne 0x41391e
jmp dword [0x43e8d8]
push eax
push 1
push dword [0x443f6c]
push ecx
call fcn.00436330
add esp, 0x10
jmp dword [0x43e8d8]
lea eax, [esp + 8]
push 0
push eax
push dword [esp + 0x14]
call fcn.00438a60
add esp, 0xc
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x43ead4]
mov edi, dword [esp + 8]
push edi
call fcn.004092e0
add esp, 4
mov esi, eax
push 0
push edi
push eax
push dword [esp + 0x18]
call fcn.00438b40
add esp, 0x10
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x43eadc]
mov ecx, dword [esp + 0x94]
jmp dword [0x43eae8]
mov eax, dword [esp + 0x94]
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp word [eax], 0
lea eax, [eax + 2]
jne 0x413b40
mov ecx, dword [esp + 0x94]
jmp case.0x4120c9.63
mov eax, 0xffffffff
push eax
call fcn.004092e0
add esp, 4
mov ecx, dword [esp + 0x94]
jmp dword [0x43eaec]
mov eax, ecx
add ecx, 2
cmp word [eax], 0
jne case.0x4120c9.63
sub eax, dword [esp + 0x94]
cmp eax, 0xffffffd7
jl 0x413b52
add eax, 0x28
jmp 0x413b57
mov dword [esp + 0x20], 0xcf08c91b
mov dword [esp + 0x24], 0xc351cd5a
mov dword [esp + 0x28], 0xc751c14b
mov dword [esp + 0x2c], 0xbb2cc561
mov dword [esp + 0x30], 0xbf1bb912
mov dword [esp + 0x34], 0xb325bd2a
mov dword [esp + 0x38], 0xb725b129
mov dword [esp + 0x3c], 0xab78b526
mov dword [esp + 0x40], 0xaf26a93c
mov dword [esp + 0x44], 0xa3a2ad38
mov word [esp + 0x48], 0
mov dword [esp], 0
mov ecx, dword [esp]
cmp ecx, 0x29
ja 0x413c20
nop
mov ecx, dword [esp]
mov edx, dword [esp]
movzx edx, byte [esp + edx + 0x20]
add ecx, 0x3b141a32
xor ecx, edx
mov dword [esp + 0x10], ecx
mov ecx, dword [esp + 0x10]
add cl, 6
mov edx, dword [esp]
mov byte [esp + edx + 0x20], cl
inc dword [esp]
mov ecx, dword [esp]
cmp ecx, 0x2a
jb 0x413bf0
mov ecx, dword [esp + 0x94]
movzx edx, word [ecx]
mov ecx, eax
test dx, dx
je 0x413c51
mov ecx, dword [esp + 0x94]
lea edi, [ecx + 2]
mov ecx, eax
nop
nop
nop
mov word [ecx], dx
add ecx, 2
movzx edx, word [edi]
add edi, 2
test dx, dx
jne 0x413c40
mov word [ecx], 0
movzx edx, word [esp + 0x20]
test dx, dx
je 0x413c81
lea edi, [esp + 0x22]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [ecx], dx
add ecx, 2
movzx edx, word [edi]
add edi, 2
test dx, dx
jne 0x413c70
mov word [ecx], 0
mov ecx, dword [esp + 0x8c]
push dword [esp + 8]
push esi
mov edi, eax
push eax
call fcn.00409c80
jmp dword [0x43eaf4]
push edi
call fcn.004092f0
add esp, 4
jmp dword [0x43eafc]
jmp dword [0x43eb04]
jmp dword [0x43eafc]
push esi
call fcn.004092f0
add esp, 4
jmp dword [0x43eb04]
push ebx
call fcn.004092f0
add esp, 4
mov eax, dword [esp + 0x64]
mov ecx, eax
add ecx, 0xc
jns 0x413ce5
mov eax, 0xffffffff
jmp 0x413cec
lea eax, [eax*2 + 0x18]
push eax
call fcn.004092e0
add esp, 4
mov esi, eax
mov dword [esp + 0x20], 0x23fe218c
mov dword [esp + 0x24], 0x2785259b
mov dword [esp + 0x28], 0x3b863999
mov dword [esp + 0x2c], 0x3fed3ddc
mov dword [esp + 0x30], 0x33933184
mov dword [esp + 0x34], 0x37933580
mov dword [esp + 0x38], 0x908
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0x1b
ja 0x413d6e
nop
nop
mov eax, dword [esp]
mov ecx, dword [esp]
movzx ecx, byte [esp + ecx + 0x20]
add eax, 0x3eb4b448
xor eax, ecx
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x10]
add al, 0x98
mov ecx, dword [esp]
mov byte [esp + ecx + 0x20], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0x1c
jb 0x413d40
movzx ecx, word [ebp]
mov eax, esi
test cx, cx
je 0x413d91
lea edx, [ebp + 2]
mov eax, esi
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x413d80
mov word [eax], 0
movzx ecx, word [esp + 0x20]
test cx, cx
je 0x413dc1
lea edx, [esp + 0x22]
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 0x413db0
mov word [eax], 0
lea eax, [esp + 0x6c]
push 0x60
push 3
push 0x120089
push eax
push esi
call fcn.00438720
add esp, 0x14
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x43eb2c]
jmp dword [0x43eb34]
push ebp
call fcn.004092f0
add esp, 4
xor ebx, ebx
jmp dword [0x43eb3c]
jmp dword [0x43eb44]
push esi
call fcn.004092f0
add esp, 4
lea eax, [esp + 0x70]
push 0
push eax
push dword [esp + 0x74]
call fcn.00438a60
add esp, 0xc
not eax
shr eax, 0x1f
xor ebx, ebx
mov dword [esp + 0x5c], 0
jmp dword [eax*4 + 0x43eb4c]
mov esi, dword [esp + 0x70]
lea eax, [esi + 1]
push eax
call fcn.004092e0
add esp, 4
push 0
push esi
mov esi, eax
push eax
push dword [esp + 0x78]
call fcn.00438b40
add esp, 0x10
not eax
shr eax, 0x1f
xor ebx, ebx
xor ecx, ecx
jmp dword [eax*4 + 0x43eb54]
mov eax, dword [esp + 0x70]
mov byte [esi + eax], 0
push esi
call fcn.00402560
add esp, 4
mov ecx, eax
xor eax, eax
test ecx, ecx
setne al
jmp dword [eax*4 + 0x43eb5c]
mov dword [esp + 0x5c], ecx
push ecx
call fcn.00402ed0
add esp, 4
mov ebx, eax
mov dword [esp + 0x20], 0x1c07ea15
mov dword [esp + 0x24], 0xf112e812
mov dword [esp + 0x28], 0x408004a
mov dword [esp + 0x2c], 0xf90af00a
mov dword [esp + 0x30], 0x4170b0b
mov word [esp + 0x34], 0xf80f
mov byte [esp + 0x36], 0x72
mov word [esp + 0x37], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0x18
ja 0x413f1e
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp]
mov ecx, dword [esp]
movzx ecx, byte [esp + ecx + 0x20]
add eax, 0xd182f5e9
xor eax, ecx
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x10]
add al, 0x73
mov ecx, dword [esp]
mov byte [esp + ecx + 0x20], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0x19
jb 0x413ef0
lea eax, [esp + 0x20]
push eax
push ebx
call fcn.00403020
add esp, 8
xor edx, edx
test eax, eax
setne dl
mov ecx, dword [esp + 0x5c]
jmp dword [edx*4 + 0x43eb64]
mov dword [esp + 0x5c], ecx
jmp dword [0x43eba4]
jmp dword [0x43ebac]
xor ebx, ebx
jmp dword [0x43eb3c]
push esi
jmp 0x414441
mov dword [esp + 0x60], esi
mov dword [esp + 0x68], ebx
mov ecx, eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov edx, ecx
inc ecx
cmp byte [edx], 0
jne 0x413f70
mov ecx, edx
xor ecx, eax
mov ebx, eax
not ebx
and ebx, edx
add ebx, ebx
mov esi, eax
mov edx, ebx
mov dword [esp + 0x50], ecx
sub edx, ecx
mov eax, edx
and eax, 3
mov edi, edx
or edi, 3
imul edi, eax
xor eax, 3
mov ecx, edx
and ecx, 0xfffffffc
imul ecx, eax
add edi, ecx
shr edi, 2
mov dword [esp + 0x54], esi
movzx eax, byte [esi + edx - 1]
cmp eax, 0x3d
je 0x413fbe
cmp eax, 0x2e
jne 0x413fbf
dec edi
mov eax, edx
xor eax, 2
mov dword [esp + 0x4c], edx
mov ecx, edx
and ecx, 0xfffffffd
add ecx, ecx
sub ecx, eax
mov eax, dword [esp + 0x54]
movzx eax, byte [eax + ecx]
cmp eax, 0x3d
mov dword [esp + 0x58], ebp
je 0x413fe7
cmp eax, 0x2e
jne 0x413fe8
dec edi
mov dword [esp + 0x74], edi
lea eax, [edi + 1]
push eax
call fcn.004092e0
add esp, 4
mov dword [esp + 0x1c], eax
cmp ebx, dword [esp + 0x50]
mov ebp, dword [esp + 0x54]
jne case.default.0x41405d
mov eax, dword [esp + 0x74]
add eax, 0xfffffffb
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x1c]
add eax, 5
mov dword [esp + 0x14], eax
mov dword [esp], 0
mov dword [esp + 4], 0
push 0x6c625980
push dword [0x443f70]
call fcn.00437c90
add esp, 8
mov ecx, esp
lea edx, [esp + 0x10]
push ecx
push 0
push 0
push 0
push 0
push 0
push edx
call eax
xor ecx, ecx
test eax, eax
setne cl
mov ebx, dword [esp + 0x68]
jmp dword [ecx*4 + 0x43eb6c]
mov ebp, dword [esp + 0x58]
jmp dword [0x43eb9c]
push dword [esp + 0x1c]
call fcn.004092f0
add esp, 4
mov esi, dword [esp + 0x60]
jmp dword [0x43eba4]
xor edi, edi
mov esi, 2
jmp 0x4140a6
mov edi, ebp
lea eax, [esi + 4]
add esi, 2
cmp esi, ecx
mov esi, eax
mov ebp, dword [esp + 0x54]
jae 0x414006
movzx eax, byte [ebp + esi - 2]
push eax
call fcn.00415cd0
add esp, 4
mov ebx, eax
movzx eax, byte [ebp + esi - 1]
push eax
call fcn.00415cd0
add esp, 4
mov bh, al
shl bl, 2
shr al, 4
and al, 3
or al, bl
mov edx, ebp
lea ebp, [edi + 1]
mov ecx, dword [esp + 0x1c]
mov byte [ecx + edi], al
mov ecx, dword [esp + 0x4c]
cmp esi, ecx
jae 0x414090
mov dword [esp + 0x50], edi
movzx eax, byte [edx + esi]
push eax
call fcn.00415cd0
mov ecx, dword [esp + 0x50]
add esp, 4
cmp al, 0x40
mov edi, ebp
je 0x414092
mov bl, al
shl bh, 4
shr al, 2
and al, 0xf
or al, bh
mov edx, dword [esp + 0x50]
lea edi, [edx + 2]
mov ecx, dword [esp + 0x1c]
mov byte [ecx + edx + 1], al
mov ecx, dword [esp + 0x4c]
lea eax, [esi + 1]
cmp eax, ecx
jae 0x414092
mov eax, dword [esp + 0x54]
movzx eax, byte [eax + esi + 1]
push eax
call fcn.00415cd0
mov ecx, dword [esp + 0x50]
add esp, 4
cmp al, 0x40
je 0x414092
shl bl, 6
add al, bl
mov ecx, dword [esp + 0x1c]
mov edi, dword [esp + 0x50]
mov byte [ecx + edi + 2], al
mov ecx, dword [esp + 0x4c]
add edi, 3
jmp 0x414092
mov ecx, dword [esp + 0x94]
mov ebp, dword [esp + 0x58]
jmp dword [0x43eb78]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, ecx
add ecx, 2
cmp word [eax], 0
jne 0x414180
sub eax, dword [esp + 0x94]
cmp eax, 0xffffffef
jge 0x41419e
mov eax, 0xffffffff
jmp 0x4141a1
add eax, 0x10
push eax
call fcn.004092e0
add esp, 4
mov dword [esp + 0x20], 0xc366c12f
mov dword [esp + 0x24], 0xc728c554
mov dword [esp + 0x28], 0xcb52c95c
mov dword [esp + 0x2c], 0xcfcecd58
mov byte [esp + 0x30], 0
mov dword [esp + 8], 0
mov ecx, dword [esp + 8]
cmp ecx, 0x10
ja 0x414227
mov ecx, dword [esp + 8]
mov edx, dword [esp + 8]
movzx edx, byte [esp + edx + 0x20]
lea esi, [ecx + 0x2d17e630]
lea edi, [ecx + edx]
add edi, 0x2d17e630
add ecx, 0x30
or ecx, esi
and ecx, edx
add ecx, ecx
sub edi, ecx
mov dword [esp + 0xc], edi
mov ecx, dword [esp + 0xc]
add cl, 0x10
mov edx, dword [esp + 8]
mov byte [esp + edx + 0x20], cl
inc dword [esp + 8]
mov ecx, dword [esp + 8]
cmp ecx, 0x11
jb 0x4141e0
mov ecx, dword [esp + 0x94]
movzx edx, word [ecx]
mov ecx, eax
test dx, dx
je 0x414255
mov ecx, dword [esp + 0x94]
lea esi, [ecx + 2]
mov ecx, eax
mov word [ecx], dx
add ecx, 2
movzx edx, word [esi]
add esi, 2
test dx, dx
jne 0x414244
mov word [ecx], 0
movzx edx, word [esp + 0x20]
test dx, dx
je 0x414279
lea esi, [esp + 0x22]
mov word [ecx], dx
add ecx, 2
movzx edx, word [esi]
add esi, 2
test dx, dx
jne 0x414268
mov word [ecx], 0
mov ecx, dword [esp + 0x8c]
push dword [esp]
push dword [esp + 8]
push eax
call fcn.00409c80
mov ecx, dword [esp + 0x94]
jmp case.0x41405d.3
mov word [eax], 0
mov ecx, dword [esp + 0x8c]
push dword [esp]
push dword [esp + 8]
push esi
call fcn.00409c80
mov ecx, dword [esp + 0x94]
jmp dword [0x43eb80]
mov eax, ecx
add ecx, 2
cmp word [eax], 0
jne case.0x41405d.3
sub eax, dword [esp + 0x94]
cmp eax, 0xffffffef
jge 0x4142e4
mov eax, 0xffffffff
jmp 0x4142e7
add eax, 0x10
push eax
call fcn.004092e0
add esp, 4
mov esi, eax
mov dword [esp + 0x20], 0xc366c12f
mov dword [esp + 0x24], 0xc728c554
mov dword [esp + 0x28], 0xcb52c95c
mov dword [esp + 0x2c], 0xcfcecd58
mov byte [esp + 0x30], 0
mov dword [esp + 8], 0
mov eax, dword [esp + 8]
cmp eax, 0x10
ja 0x414376
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp + 8]
mov ecx, dword [esp + 8]
movzx ecx, byte [esp + ecx + 0x20]
lea edx, [eax + 0x2d17e630]
lea edi, [eax + ecx]
add edi, 0x2d17e630
add eax, 0x30
or eax, edx
and eax, ecx
add eax, eax
sub edi, eax
mov dword [esp + 0xc], edi
mov eax, dword [esp + 0xc]
add al, 0x10
mov ecx, dword [esp + 8]
mov byte [esp + ecx + 0x20], al
inc dword [esp + 8]
mov eax, dword [esp + 8]
cmp eax, 0x11
jb 0x414330
mov eax, dword [esp + 0x94]
movzx ecx, word [eax]
mov eax, esi
test cx, cx
je 0x4143b1
mov eax, dword [esp + 0x94]
lea edx, [eax + 2]
mov eax, esi
nop
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 0x4143a0
mov word [eax], 0
movzx ecx, word [esp + 0x20]
test cx, cx
je 0x4142a0
lea edx, [esp + 0x22]
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 0x4143d0
jmp 0x4142a0
jmp dword [0x43eb84]
jmp dword [0x43eb8c]
push esi
call fcn.004092f0
add esp, 4
nop
nop
nop
nop
nop
push esi
call fcn.004092f0
add esp, 4
jmp dword [0x43eb98]
push 0xe050b307
push dword [0x443f58]
call fcn.00437c90
add esp, 8
push dword [esp + 4]
call eax
jmp dword [0x43eb9c]
mov esi, dword [esp + 0x60]
jmp dword [0x43eba4]
xor ebx, ebx
jmp dword [0x43ebc4]
push ebp
call fcn.004092f0
add esp, 4
xor ebx, ebx
jmp case.0x4120c9.88
push dword [esp + 0x5c]
call fcn.00403160
add esp, 4
jmp dword [0x43ec0c]
push ebp
call fcn.004092f0
add esp, 4
and bl, 1
mov eax, ebx
add esp, 0x78
pop esi
pop edi
pop ebx
pop ebp
ret
mov eax, dword [esp + 0x94]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x90]
mov dword [esp + 0x14], eax
mov dword [esp + 0x20], 0xb7db89c4
mov dword [esp + 0x24], 0xb3d3b5de
mov dword [esp + 0x28], 0xbf2ab12d
mov dword [esp + 0x2c], 0xbbbabd20
mov byte [esp + 0x30], 0
mov dword [esp + 0xc], 0
mov eax, dword [esp + 0xc]
cmp eax, 0x10
ja 0x414501
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0xc]
movzx ecx, byte [esp + ecx + 0x20]
add eax, 0x42f7d99e
xor eax, ecx
mov dword [esp], eax
mov eax, dword [esp]
add al, 0xea
mov ecx, dword [esp + 0xc]
mov byte [esp + ecx + 0x20], al
inc dword [esp + 0xc]
mov eax, dword [esp + 0xc]
cmp eax, 0x11
jb 0x4144d0
lea eax, [esp + 0x20]
mov dword [esp + 0x18], eax
lea eax, [esp + 0x10]
push dword [esp + 0x9c]
push dword [esp + 0x9c]
push eax
push dword [esp + 0x98]
call fcn.00414a90
add esp, 0x10
mov ebx, eax
jmp case.0x4147c5.2
mov eax, dword [esp + 0xc]
mov dword [esp], 0x585b5a45
mov dword [esp + 0x10], 0
mov ecx, dword [esp + 0x10]
cmp ecx, 3
ja 0x414583
nop
nop
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x10]
movzx edx, byte [esp + edx]
add ecx, 0x81c0ccef
xor ecx, edx
mov dword [esp + 0x20], ecx
mov ecx, dword [esp + 0x20]
add cl, 0x55
mov edx, dword [esp + 0x10]
mov byte [esp + edx], cl
inc dword [esp + 0x10]
mov ecx, dword [esp + 0x10]
cmp ecx, 4
jb 0x414550
mov ecx, dword [0x443f64]
test ecx, ecx
je case.0x4120c9.76
mov edx, dword [esp]
xor esi, esi
mov edi, dword [0x443f68]
nop
nop
nop
nop
nop
nop
nop
nop
cmp dword [edi + esi*8], 0x625b6034
je 0x4145b0
inc esi
cmp ecx, esi
jne 0x4145a0
jmp case.0x4120c9.76
mov ecx, dword [edi + esi*8 + 4]
cmp ecx, edx
je case.0x4120c9.76
push eax
push 1
push dword [0x443f6c]
push ecx
call fcn.00436330
add esp, 0x10
mov eax, dword [esp + 0xc]
mov dword [esp], 0x585b5a45
mov dword [esp + 0x10], 0
mov ecx, dword [esp + 0x10]
cmp ecx, 3
ja 0x414623
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x10]
movzx edx, byte [esp + edx]
add ecx, 0x81c0ccef
xor ecx, edx
mov dword [esp + 0x20], ecx
mov ecx, dword [esp + 0x20]
add cl, 0x55
mov edx, dword [esp + 0x10]
mov byte [esp + edx], cl
inc dword [esp + 0x10]
mov ecx, dword [esp + 0x10]
cmp ecx, 4
jb 0x4145f0
mov ecx, dword [0x443f64]
test ecx, ecx
je 0x414658
mov edx, dword [esp]
xor esi, esi
mov edi, dword [0x443f68]
nop
nop
nop
nop
nop
nop
nop
nop
cmp dword [edi + esi*8], 0x625b6034
je 0x414650
inc esi
cmp ecx, esi
jne 0x414640
jmp 0x414658
mov ecx, dword [edi + esi*8 + 4]
cmp ecx, edx
jne 0x414678
jmp dword [0x43eb0c]
mov eax, dword [case.0x4120c9.80]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp eax
jmp dword [0x43eb24]
push eax
push 1
push dword [0x443f6c]
push ecx
call fcn.00436330
add esp, 0x10
jmp dword [0x43eb0c]
mov eax, dword [esp + 0x6c]
mov dword [esp], 0x585b5a45
mov dword [esp + 0x10], 0
mov ecx, dword [esp + 0x10]
cmp ecx, 3
ja 0x4146e3
nop
nop
nop
nop
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x10]
movzx edx, byte [esp + edx]
add ecx, 0x81c0ccef
xor ecx, edx
mov dword [esp + 0x20], ecx
mov ecx, dword [esp + 0x20]
add cl, 0x55
mov edx, dword [esp + 0x10]
mov byte [esp + edx], cl
inc dword [esp + 0x10]
mov ecx, dword [esp + 0x10]
cmp ecx, 4
jb 0x4146b0
mov ecx, dword [0x443f64]
test ecx, ecx
je case.default.0x414a6c
mov edx, dword [esp]
xor esi, esi
mov edi, dword [0x443f68]
nop
nop
nop
nop
nop
nop
nop
nop
cmp dword [edi + esi*8], 0x625b6034
je 0x414710
inc esi
cmp ecx, esi
jne 0x414700
jmp case.default.0x414a6c
mov ecx, dword [edi + esi*8 + 4]
cmp ecx, edx
jne 0x414a53
xor eax, eax
test ebx, ebx
sete al
jmp dword [eax*4 + 0x43ebbc]
mov dword [esp + 0x20], 0x15edefe8
mov dword [esp + 0x24], 0x31071115
mov dword [esp + 0x28], 0xf40cf309
mov dword [esp + 0x2c], 0xc0b0207
mov word [esp + 0x30], 0xc00
mov byte [esp + 0x32], 0x6e
mov word [esp + 0x33], 0
mov byte [esp + 0x35], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0x15
ja 0x4147ae
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp]
mov ecx, dword [esp]
movzx ecx, byte [esp + ecx + 0x20]
add eax, 0xd5c63c6a
xor eax, ecx
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x10]
add al, 0xee
mov ecx, dword [esp]
mov byte [esp + ecx + 0x20], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0x16
jb 0x414780
lea eax, [esp + 0x20]
push eax
push ebx
call fcn.00403050
add esp, 8
mov edi, eax
xor eax, eax
test edi, edi
setne al
jmp dword [eax*4 + 0x43ebcc]
xor ebx, ebx
xor esi, esi
mov dword [esp + 0x58], ebp
mov dword [esp + 0x60], edi
jmp 0x4147f1
mov eax, dword [esp + 0x54]
or al, bl
mov ebx, eax
mov esi, dword [esp + 0x50]
inc esi
mov edi, dword [esp + 0x60]
push edi
call fcn.00403080
add esp, 4
xor ecx, ecx
cmp esi, eax
setb cl
jmp dword [ecx*4 + 0x43ebd4]
mov eax, esi
mov dword [esp + 0x54], ebx
lea ebx, [ebp + 2]
xor esi, esi
mov dword [esp + 0x50], eax
push eax
push edi
call fcn.00403090
add esp, 8
mov edi, eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp byte [edi + esi], 0
lea esi, [esi + 1]
jne 0x414830
lea eax, [edi + esi]
dec eax
mov esi, edi
not esi
and esi, eax
xor eax, edi
add esi, esi
sub esi, eax
mov eax, esi
inc eax
mov dword [esp + 0x68], eax
jns 0x414860
mov eax, 0xffffffff
jmp 0x414867
lea eax, [esi*2 + 2]
push eax
call fcn.004092e0
add esp, 4
mov dword [esp + 0x1c], eax
mov eax, esi
test edi, edi
jne 0x41488b
mov ecx, 0xffffffff
nop
lea eax, [ecx + 1]
cmp byte [ecx + 1], 0
mov ecx, eax
jne 0x414880
mov ecx, dword [esp + 0x1c]
lea edx, [ecx + esi*2]
add edx, 2
mov dword [esp + 0x20], 0
add edx, 0xfffffffe
mov esi, ecx
mov dword [esp + 0x4c], edx
cmp ecx, edx
jae 0x4148f0
mov esi, dword [esp + 0x1c]
test eax, eax
jle 0x4148f0
mov ebp, edi
add ebp, eax
mov esi, dword [esp + 0x1c]
nop
nop
nop
nop
nop
nop
cmp byte [edi], 0
je 0x4148f0
lea eax, [esp + 0x20]
push eax
push ebp
push edi
call fcn.0040d220
add esp, 0xc
movzx ecx, word [esp + 0x20]
mov word [esi], cx
add esi, 2
cmp esi, dword [esp + 0x4c]
jae 0x4148f0
add edi, eax
cmp edi, ebp
jb 0x4148c0
nop
nop
nop
nop
nop
mov word [esi], 0
mov eax, dword [esp + 0x68]
add eax, dword [esp + 0x64]
jns 0x414910
mov eax, 0xffffffff
jmp 0x414912
add eax, eax
mov ebp, dword [esp + 0x58]
mov esi, dword [esp + 0x1c]
push eax
call fcn.004092e0
add esp, 4
mov edi, eax
movzx ecx, word [ebp]
test cx, cx
je 0x414951
mov edx, ebx
mov eax, edi
nop
nop
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 0x414940
mov word [eax], 0x5c
add eax, 2
movzx ecx, word [esi]
test cx, cx
je 0x414981
mov edx, esi
add edx, 2
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 0x414970
mov word [eax], 0
lea eax, [esp + 0x20]
push eax
push edi
call fcn.004388c0
add esp, 8
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x43ebdc]
xor eax, eax
test byte [esp + 0x20], 0x10
sete al
jmp dword [eax*4 + 0x43ebe4]
movzx eax, word [ebp]
mov ecx, edi
test ax, ax
je 0x4149d1
mov ecx, edi
nop
nop
mov word [ecx], ax
add ecx, 2
movzx eax, word [ebx]
add ebx, 2
test ax, ax
jne 0x4149c0
mov word [ecx], 0
mov eax, dword [esp + 0x94]
mov dword [esp + 0x20], eax
mov dword [esp + 0x28], esi
mov dword [esp + 0x24], edi
push dword [esp + 0x9c]
push dword [esp + 0x9c]
lea eax, [esp + 0x28]
push eax
push dword [esp + 0x98]
call fcn.00414a90
add esp, 0x10
mov ebx, eax
jmp dword [0x43ebec]
jmp dword [0x43ebf8]
push edi
call fcn.004092f0
add esp, 4
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
push edi
call fcn.004092f0
add esp, 4
jmp dword [0x43ec00]
jmp dword [0x43ec04]
push esi
call fcn.004092f0
add esp, 4
jmp case.0x4147c5.15
push eax
push 1
push dword [0x443f6c]
push ecx
call fcn.00436330
add esp, 0x10
xor eax, eax
test ebx, ebx
sete al
jmp dword [eax*4 + 0x43ebbc]
push esi
call fcn.004092f0
add esp, 4
push esi
call fcn.004092f0
add esp, 4
jmp dword [0x43ebb8]
int3
mov esi, ecx
mov dword [esp + 0xc], 0xe905eb2c
mov dword [esp + 0x10], 0xed1aef1d
mov dword [esp + 0x14], 0xf104f31d
mov dword [esp + 0x18], 0xf5f6f70f
mov word [esp + 0x1c], 0
mov byte [esp + 0x1e], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0x12
ja 0x414b3a
nop
nop
mov eax, dword [esp]
mov ecx, dword [esp]
movzx ecx, byte [esp + ecx + 0xc]
lea edx, [eax + 0xa7]
add eax, ecx
and edx, ecx
add edx, edx
sub eax, edx
add eax, 0xff59bea7
mov dword [esp + 0x5c], eax
mov eax, dword [esp + 0x5c]
add al, 0xbd
mov ecx, dword [esp]
mov byte [esp + ecx + 0xc], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0x13
jb 0x414b00
lea eax, [esp + 0xc]
push eax
push dword [esp + 0xa8]
push ebx
call fcn.004135f0
add esp, 0xc
mov dword [esp + 0xc], 0x13a511c4
mov dword [esp + 0x10], 0xef57ed53
mov dword [esp + 0x14], 0xeb0ae95e
mov dword [esp + 0x18], 0xe747e538
mov dword [esp + 0x1c], 0xe343e16c
mov word [esp + 0x20], 0xfdfc
mov dword [esp + 0x22], 0
mov word [esp + 0x26], 0
mov ecx, esi
and cl, 1
or cl, al
mov esi, ecx
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0x1b
ja 0x414bde
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp]
mov ecx, dword [esp]
movzx ecx, byte [esp + ecx + 0xc]
add eax, 0xf9f1487c
xor eax, ecx
mov dword [esp + 0x5c], eax
mov eax, dword [esp + 0x5c]
add al, 0x94
mov ecx, dword [esp]
mov byte [esp + ecx + 0xc], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0x1c
jb 0x414bb0
lea eax, [esp + 0xc]
push eax
push dword [esp + 0xa8]
push ebx
call fcn.004135f0
add esp, 0xc
mov dword [esp + 0xc], 0x3745396c
mov dword [esp + 0x10], 0x334b354f
mov dword [esp + 0x14], 0x4f6e3142
mov dword [esp + 0x18], 0x4b2b4d10
mov dword [esp + 0x1c], 0x472749c4
mov dword [esp + 0x20], 0x43184564
mov dword [esp + 0x24], 0x5fd04133
mov dword [esp + 0x28], 0x5b1b5d7c
mov dword [esp + 0x2c], 0x57295927
mov dword [esp + 0x30], 0x53df5527
mov dword [esp + 0x34], 0x6fe25122
mov dword [esp + 0x38], 0x6d6c
mov ecx, esi
or cl, al
mov esi, ecx
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0x2f
ja 0x414c9e
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp]
mov ecx, dword [esp]
movzx ecx, byte [esp + ecx + 0xc]
add eax, 0x3252e236
xor eax, ecx
mov dword [esp + 0x5c], eax
mov eax, dword [esp + 0x5c]
add al, 0xf2
mov ecx, dword [esp]
mov byte [esp + ecx + 0xc], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0x30
jb 0x414c70
lea eax, [esp + 0xc]
push eax
push dword [esp + 0xa8]
push ebx
call fcn.004135f0
add esp, 0xc
mov dword [esp + 0xc], 0x51a94f95
mov dword [esp + 0x10], 0x557253b2
mov dword [esp + 0x14], 0x59b55790
mov dword [esp + 0x18], 0x5db95bac
mov word [esp + 0x1c], 0x5f5c
mov dword [esp + 0x1e], 0
mov word [esp + 0x22], 0
mov ecx, esi
or cl, al
mov ebp, ecx
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0x17
ja 0x414d2e
nop
nop
mov eax, dword [esp]
mov ecx, dword [esp]
movzx ecx, byte [esp + ecx + 0xc]
add eax, 0xc655990d
xor eax, ecx
mov dword [esp + 0x5c], eax
mov eax, dword [esp + 0x5c]
add al, 0xbf
mov ecx, dword [esp]
mov byte [esp + ecx + 0xc], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0x18
jb 0x414d00
lea eax, [esp + 0xc]
push eax
mov esi, dword [esp + 0xa8]
push esi
push ebx
call fcn.004135f0
add esp, 0xc
movzx edi, al
mov eax, ebp
movzx ebp, al
mov edx, edi
not edx
xor edi, ebp
add edi, ebp
mov ebx, dword [esi + 4]
mov eax, 0xfffffffe
nop
nop
nop
nop
cmp word [ebx + eax + 2], 0
lea eax, [eax + 2]
jne 0x414d60
sar eax, 1
inc eax
mov ecx, eax
and ecx, 0x10
xor eax, 0x10
lea eax, [eax + ecx*2]
test eax, eax
mov dword [esp + 8], edx
jns 0x41519d
mov eax, 0xffffffff
jmp 0x41519f
lea eax, [esp + 0xd]
mov dword [esp + 0x84], eax
lea eax, [esp + 0x6f]
mov dword [esp + 0x88], eax
xor eax, eax
cmp edx, dword [esp + 0xac]
setb al
mov dword [esp + 0x58], 0
xor ecx, ecx
jmp dword [eax*4 + 0x43ec1c]
mov ecx, dword [esp + 0x7c]
or cl, byte [esp + 7]
mov edx, dword [esp + 0x78]
inc edx
xor eax, eax
cmp edx, dword [esp + 0xac]
setb al
jmp dword [eax*4 + 0x43ec1c]
mov dword [esp + 0x7c], ecx
mov dword [esp + 0x78], edx
lea edi, [edx + edx*2]
mov eax, dword [esp + 0xa8]
lea esi, [eax + edi*4]
push esi
push dword [esp + 0xa8]
push ebx
call fcn.00415890
add esp, 0xc
mov ecx, dword [case.0x414a6c.29]
nop
nop
nop
nop
jmp ecx
mov byte [esp + 7], al
movzx eax, al
jmp dword [eax*4 + 0x43ec34]
mov eax, dword [esp + 0xa8]
movzx eax, byte [eax + edi*4 + 8]
mov byte [esp + 0x53], al
mov eax, dword [esi]
lea edi, [eax - 2]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp word [edi + 2], 0
lea edi, [edi + 2]
jne 0x414e50
movzx ecx, word [eax]
test cx, cx
je 0x414ea4
xor ebx, ebx
mov ebp, eax
jmp 0x414e7e
add ebx, edx
movzx ecx, word [eax + 2]
add eax, 2
test cx, cx
je 0x414ea8
cmp eax, edi
jae 0x414ea8
movzx esi, cx
cmp esi, 0x800
mov ecx, 3
sbb ecx, 0
mov edx, 1
cmp esi, 0x80
jb 0x414e70
mov edx, ecx
jmp 0x414e70
mov ebp, eax
xor ebx, ebx
lea eax, [ebx + 1]
mov dword [esp + 0x80], eax
push eax
call fcn.004092e0
add esp, 4
mov esi, eax
mov dword [esp + 0x74], eax
test ebx, ebx
jle 0x414fb0
mov ecx, ebp
mov esi, dword [esp + 0x74]
cmp ebp, edi
jae 0x414fb0
mov esi, dword [esp + 0x74]
add ebx, esi
add dword [esp + 0x80], esi
add ecx, 2
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx edx, word [ecx - 2]
test dx, dx
je 0x414fb0
cmp dx, 0x7f
ja 0x414f10
mov byte [esi], dl
mov ebp, 1
jmp 0x414f90
mov dword [esp + 8], ecx
mov ecx, esi
not ecx
add ecx, dword [esp + 0x80]
movzx eax, dx
cmp ecx, 2
jb 0x414f50
cmp eax, 0x7ff
ja 0x414f50
mov eax, edx
shr eax, 6
add al, 0xc0
mov byte [esi], al
and dl, 0x3f
or dl, 0x80
mov byte [esi + 1], dl
mov ebp, 2
mov ecx, dword [esp + 8]
jmp 0x414f90
xor ebp, ebp
cmp ecx, 3
mov ecx, dword [esp + 8]
jb 0x414f90
mov ecx, eax
shr ecx, 0xc
or cl, 0xe0
mov byte [esi], cl
mov ecx, dword [esp + 8]
shr eax, 6
and al, 0x3f
or al, 0x80
mov byte [esi + 1], al
and dl, 0x3f
or dl, 0x80
mov byte [esi + 2], dl
mov ebp, 3
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
add esi, ebp
cmp esi, ebx
jae 0x414fb0
lea eax, [ecx + 2]
cmp ecx, edi
mov ecx, eax
jb 0x414ef0
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [esi], 0
mov dword [esp + 0xc], 0x79692726
mov dword [esp + 0x10], 0x70746c7c
mov dword [esp + 0x14], 0x29787e67
mov dword [esp + 0x18], 0x692a6579
mov dword [esp + 0x1c], 0x7c36787c
mov dword [esp + 0x20], 0x6a636178
mov dword [esp + 0x24], 0x2e696077
mov dword [esp + 0x28], 0x4a67787a
mov dword [esp + 0x2c], 0x53440748
mov dword [esp + 0x30], 0x425f5a51
mov dword [esp + 0x34], 0x2e255e
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0x2b
ja 0x41504e
nop
nop
nop
nop
nop
nop
mov eax, dword [esp]
mov ecx, dword [esp]
movzx ecx, byte [esp + ecx + 0xc]
add eax, 0x76885201
xor eax, ecx
mov dword [esp + 0x5c], eax
mov eax, dword [esp + 0x5c]
add al, 0xfb
mov ecx, dword [esp]
mov byte [esp + ecx + 0xc], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0x2c
jb 0x415020
mov dword [esp + 0x5c], 0xd5dcd0e7
mov dword [esp + 0x60], 0xe422e0df
mov dword [esp + 0x64], 0xe2daddd3
mov dword [esp + 0x68], 0x1f1fd1e3
mov word [esp + 0x6c], 0xdfd8
mov byte [esp + 0x6e], 0xbe
mov eax, dword [esp + 0x88]
mov byte [eax + 4], 0
mov dword [eax], 0
mov dword [esp + 0x54], 0
mov eax, dword [esp + 0x54]
cmp eax, 0x17
mov ebx, dword [esp + 0xa0]
mov esi, dword [esp + 0x74]
ja 0x4150e1
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp + 0x54]
mov ecx, dword [esp + 0x54]
movzx ecx, byte [esp + ecx + 0x5c]
add eax, 0xdf54fbf2
xor eax, ecx
mov dword [esp], eax
mov eax, dword [esp]
add al, 0x46
mov ecx, dword [esp + 0x54]
mov byte [esp + ecx + 0x5c], al
inc dword [esp + 0x54]
mov eax, dword [esp + 0x54]
cmp eax, 0x18
jb 0x4150b0
mov eax, dword [esp + 0x58]
and al, 1
movzx ecx, byte [esp + 0x53]
or cl, al
mov dword [esp + 0x58], ecx
lea ecx, [0x442f57]
nop
nop
nop
nop
nop
nop
nop
nop
cmp byte [ecx + 1], 0
lea ecx, [ecx + 1]
jne 0x415100
movzx eax, byte [esp + 0x5c]
test al, al
je 0x41512f
xor edx, edx
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [ecx + edx], al
movzx eax, byte [esp + edx + 0x5d]
inc edx
test al, al
jne 0x415120
add ecx, edx
mov byte [ecx], 0
movzx eax, byte [esi]
test al, al
je 0x41514b
mov edx, esi
inc edx
nop
nop
nop
nop
mov byte [ecx], al
inc ecx
movzx eax, byte [edx]
inc edx
test al, al
jne 0x415140
mov byte [ecx], 0
movzx eax, byte [esp + 0xc]
test al, al
je 0x41516b
mov edx, dword [esp + 0x84]
nop
nop
mov byte [ecx], al
inc ecx
movzx eax, byte [edx]
inc edx
test al, al
jne 0x415160
mov byte [ecx], 0
jmp dword [0x43ec3c]
push esi
call fcn.004092f0
add esp, 4
mov ecx, dword [esp + 0x7c]
or cl, byte [esp + 7]
mov edx, dword [esp + 0x78]
inc edx
xor eax, eax
cmp edx, dword [esp + 0xac]
setb al
jmp dword [eax*4 + 0x43ec1c]
add eax, eax
push eax
call fcn.004092e0
add esp, 4
mov esi, eax
movzx ecx, word [ebx]
test cx, cx
je 0x4151d1
add ebx, 2
mov eax, esi
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 0x4151c0
mov word [eax], 0x5c
mov dword [esp + 0xc], 0x238721fe
mov dword [esp + 0x10], 0x27912590
mov dword [esp + 0x14], 0x3b883987
mov dword [esp + 0x18], 0x3f923d87
mov dword [esp + 0x1c], 0x338d31f3
mov dword [esp + 0x20], 0x378d358b
mov dword [esp + 0x24], 0xbaf09b1
mov dword [esp + 0x28], 0xf0e0dbf
mov dword [esp], 0
mov ecx, dword [esp]
cmp ecx, 0x1f
ja 0x415260
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [esp]
mov edx, dword [esp]
movzx edx, byte [esp + edx + 0xc]
add ecx, 0x1c73fdc8
xor ecx, edx
mov dword [esp + 0x5c], ecx
mov ecx, dword [esp + 0x5c]
add cl, 0x18
mov edx, dword [esp]
mov byte [esp + edx + 0xc], cl
inc dword [esp]
mov ecx, dword [esp]
cmp ecx, 0x20
jb 0x415230
add eax, 2
movzx ecx, word [esp + 0xc]
test cx, cx
mov ebx, dword [esp + 0xa0]
je 0x415291
lea edx, [esp + 0xe]
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 0x415280
and dword [esp + 8], ebp
mov word [eax], 0
xor ebp, ebp
nop
nop
nop
nop
push 0
push 0x2710
push esi
call fcn.00430fc0
add esp, 0xc
mov dword [esp + 0xc], 0xf6b095a
mov dword [esp + 0x10], 0x3890d78
mov dword [esp + 0x14], 0x7700173
mov dword [esp + 0x18], 0x1b76057b
mov dword [esp + 0x1c], 0x1f6d195f
mov dword [esp + 0x20], 0x136d1d6f
mov dword [esp + 0x24], 0x17731169
mov dword [esp + 0x28], 0x2b2a1563
mov byte [esp + 0x2c], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0x20
ja 0x41533e
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp]
mov ecx, dword [esp]
movzx ecx, byte [esp + ecx + 0xc]
add eax, 0x919a7482
xor eax, ecx
mov dword [esp + 0x5c], eax
mov eax, dword [esp + 0x5c]
add al, 0x76
mov ecx, dword [esp]
mov byte [esp + ecx + 0xc], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0x21
jb 0x415310
lea eax, [esp + 0xc]
push eax
push dword [esp + 0xa8]
push ebx
call fcn.004135f0
add esp, 0xc
movzx eax, al
jmp dword [eax*4 + 0x43ec44]
xor ecx, ecx
cmp ebp, 0xa
setb cl
jmp dword [ecx*4 + 0x43ec4c]
inc ebp
jmp 0x4152a0
jmp dword [eax*4 + 0x43ec54]
cmp edi, dword [esp + 8]
setne dl
or dl, al
jmp dword [0x43ec5c]
push esi
mov esi, ebx
mov ebx, edx
call fcn.004092f0
mov edx, ebx
mov ebx, esi
add esp, 4
mov eax, dword [esp + 0x58]
and al, 1
movzx eax, al
jmp dword [eax*4 + 0x43ec64]
mov dword [esp + 0xc], 0x656c685b
mov dword [esp + 0x10], 0x6426586b
mov dword [esp + 0x14], 0x6e666567
mov dword [esp + 0x18], 0x6b6b796f
mov dword [esp + 0x1c], 0x7c7d7230
mov dword [esp + 0x20], 0x64737c7f
mov dword [esp + 0x24], 0x77737f38
mov dword [esp + 0x28], 0x79713d79
mov dword [esp + 0x2c], 0x464a5500
mov dword [esp + 0x30], 0x554e4604
mov dword [esp + 0x34], 0x5e434447
mov dword [esp + 0x38], 0x4e4c0041
mov dword [esp + 0x3c], 0x13565443
mov dword [esp + 0x40], 0x40594756
mov dword [esp + 0x44], 0x31485c4b
mov byte [esp + 0x48], 0x3c
mov dword [esp + 0x49], 0
mov word [esp + 0x4d], 0
mov dword [esp], 0
mov ecx, dword [esp]
cmp ecx, 0x42
ja 0x415484
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [esp]
mov edx, dword [esp]
movzx edx, byte [esp + edx + 0xc]
lea ebx, [ecx + edx]
and ecx, edx
add ecx, ecx
sub ebx, ecx
add ebx, 0x1133c600
mov dword [esp + 0x5c], ebx
mov ecx, dword [esp + 0x5c]
mov edx, dword [esp]
mov byte [esp + edx + 0xc], cl
inc dword [esp]
mov ecx, dword [esp]
cmp ecx, 0x43
jb 0x415450
mov ecx, 0x442f58
nop
nop
nop
nop
nop
nop
nop
mov ebx, ecx
inc ecx
cmp byte [ebx], 0
jne 0x415490
movzx edx, byte [esp + 0xc]
test dl, dl
je 0x4154c1
mov ebx, 0xffffffff
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [ecx + ebx], dl
movzx edx, byte [esp + ebx + 0xe]
inc ebx
test dl, dl
jne 0x4154b0
add ecx, ebx
mov ebx, ecx
mov byte [ebx], 0
cmp edi, dword [esp + 8]
setne dl
or dl, al
mov ebx, dword [esp + 0xa0]
jmp dword [0x43ec5c]
mov eax, dword [esp + 0x58]
and al, 1
movzx eax, al
jmp dword [eax*4 + 0x43ec64]
mov eax, dword [esp + 0xa4]
mov ecx, dword [eax + 4]
mov eax, 0xfffffffe
nop
nop
nop
nop
nop
nop
nop
cmp word [ecx + eax + 2], 0
lea eax, [eax + 2]
jne 0x415500
cmp eax, 0xffffffd1
mov byte [esp + 8], dl
jge 0x41551b
mov eax, 0xffffffff
jmp 0x41551e
add eax, 0x2e
push eax
call fcn.004092e0
add esp, 4
mov ebp, eax
mov dword [esp + 0xc], 0x13e611f4
mov dword [esp + 0x10], 0x1ffd1d8b
mov dword [esp + 0x14], 0x1b8e19f9
mov dword [esp + 0x18], 0x7f50524
mov dword [esp + 0x1c], 0x395019c
mov dword [esp + 0x20], 0xfef0d9e
mov dword [esp + 0x24], 0xbe709e7
mov dword [esp + 0x28], 0x37a235d0
mov dword [esp + 0x2c], 0x33ac31dd
mov dword [esp + 0x30], 0x3faa3dd1
mov dword [esp + 0x34], 0x3bd839d4
mov word [esp + 0x38], 0x2524
mov dword [esp + 0x3a], 0
mov byte [esp + 0x3e], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0x32
ja 0x4155de
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp]
mov ecx, dword [esp]
movzx ecx, byte [esp + ecx + 0xc]
add eax, 0xc9ff65c4
xor eax, ecx
mov dword [esp + 0x5c], eax
mov eax, dword [esp + 0x5c]
add al, 0x2c
mov ecx, dword [esp]
mov byte [esp + ecx + 0xc], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0x33
jb 0x4155b0
mov eax, dword [esp + 0xa4]
mov ecx, dword [eax + 4]
movzx edx, word [ecx]
mov eax, ebp
test dx, dx
je 0x415611
add ecx, 2
mov eax, ebp
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 0x415600
mov word [eax], 0
movzx ecx, word [esp + 0xc]
test cx, cx
je 0x415641
lea edx, [esp + 0xe]
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 0x415630
mov word [eax], 0
mov eax, dword [esp + 0xa4]
mov edi, dword [eax]
mov eax, 0xfffffffe
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp word [edi + eax + 2], 0
lea eax, [eax + 2]
jne 0x415660
mov ecx, dword [esp + 0xa4]
mov edx, dword [ecx + 8]
mov ecx, 0xfffffffe
nop
nop
nop
nop
nop
nop
cmp word [edx + ecx + 2], 0
lea ecx, [ecx + 2]
jne 0x415680
sar eax, 1
sar ecx, 1
lea edx, [eax + ecx]
add edx, 0xc
test edx, edx
jns 0x4156a0
mov eax, 0xffffffff
jmp 0x4156a9
add eax, ecx
lea eax, [eax*2 + 0x18]
push eax
call fcn.004092e0
add esp, 4
mov esi, eax
movzx ecx, word [edi]
test cx, cx
je 0x4156e1
add edi, 2
mov eax, esi
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 [edi]
add edi, 2
test cx, cx
jne 0x4156d0
mov word [eax], 0x2f
mov dword [esp + 0xc], 0x972899cb
mov dword [esp + 0x10], 0x9301951a
mov dword [esp + 0x14], 0x8f01911b
mov dword [esp + 0x18], 0x8b048d11
mov dword [esp + 0x1c], 0x87388934
mov dword [esp + 0x20], 0x8584
mov byte [esp + 0x24], 0
mov dword [esp], 0
mov ecx, dword [esp]
cmp ecx, 0x18
ja 0x41576d
nop
nop
nop
nop
nop
nop
mov ecx, dword [esp]
mov edx, dword [esp]
movzx edx, byte [esp + edx + 0xc]
lea edi, [ecx + edx]
add edi, 0x5e162ea6
add ecx, 0x5e162ea6
and ecx, edx
add ecx, ecx
sub edi, ecx
mov dword [esp + 0x5c], edi
mov ecx, dword [esp + 0x5c]
add cl, 0xc2
mov edx, dword [esp]
mov byte [esp + edx + 0xc], cl
inc dword [esp]
mov ecx, dword [esp]
cmp ecx, 0x19
jb 0x415730
add eax, 2
mov ecx, dword [esp + 0xa4]
mov ecx, dword [ecx + 8]
movzx edx, word [ecx]
test dx, dx
je 0x4157a1
add ecx, 2
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 0x415790
mov word [eax], 0
movzx ecx, word [esp + 0xc]
test cx, cx
je 0x4157d1
lea edx, [esp + 0xe]
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 0x4157c0
mov word [eax], 0
mov dword [esp + 0xc], 0x5756493e
mov word [esp + 0x10], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 5
ja 0x41582e
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp]
mov ecx, dword [esp]
movzx ecx, byte [esp + ecx + 0xc]
add eax, 0x2d62c06e
xor eax, ecx
mov dword [esp + 0x5c], eax
mov eax, dword [esp + 0x5c]
add al, 0xda
mov ecx, dword [esp]
mov byte [esp + ecx + 0xc], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 6
jb 0x415800
push 0
push 0
push 2
push 0xc00000
lea eax, [esp + 0x1c]
push eax
push ebp
push esi
push ebx
call fcn.00417e80
add esp, 0x20
movzx edx, byte [esp + 8]
or dl, al
jmp dword [0x43ec6c]
push ebp
mov ebx, edx
call fcn.004092f0
mov edx, ebx
add esp, 4
jmp dword [0x43ec74]
jmp dword [0x43ec74]
push esi
mov ebx, edx
call fcn.004092f0
mov edx, ebx
add esp, 4
mov eax, edx
add esp, 0x8c
pop esi
pop edi
pop ebx
pop ebp
ret
push esi
call fcn.004092f0
add esp, 4
jmp dword [0x43ec84]
push edi
call fcn.004092f0
add esp, 4
mov eax, ebx
add esp, 0x40
pop esi
pop edi
pop ebx
pop ebp
ret
ret
adc al, 0x41
add byte [edx + 0x3a00410b], ch
adc al, 0x41
add byte [ebp + 0xc], dh
inc ecx
add byte [edx + 0xd], ch
or eax, 0xd290041
inc ecx
add byte [eax], dh
or eax, 0xd300041
inc ecx
add byte [edx], dh
or eax, 0xd300041
inc ecx
add byte [edx + 0xd], ch
or eax, 0xd290041
inc ecx
add byte [eax], dh
or eax, 0xd300041
inc ecx
add byte [edx], dh
or eax, 0xd300041
inc ecx
add byte [edx + 0xd], ch
inc ecx
add byte [ebx + 0xd], al
inc ecx
add byte [ebp + 0xd], dl
inc ecx
add byte [edx + 0xd], ch
inc ecx
add byte [esi + ecx + 0x41], bh
add byte [edx - 0x74ffbef2], bl
push cs
inc ecx
add byte [edx - 0x65ffbef2], al
push cs
inc ecx
add byte [ebx - 0x2affbef2], cl
push cs
inc ecx
add ah, ch
push cs
inc ecx
add dh, bh
adc eax, dword [ecx]
or byte [ebx], dl
inc ecx
add byte [esp + edx], al
inc ecx
add byte [esi], dl
adc al, 0x41
add byte [ecx], al
add byte [eax], al
add byte [ecx], al
add byte [eax], al
add byte [edx + 0x1004115], al
add byte [eax], al
add byte [edi], ch
adc eax, dword [ecx]
ficom word [edx]
inc ecx
add al, dh
adc eax, dword [ecx]
ficom word [edx]
inc ecx
add byte [esp + edx], bl
inc ecx
add byte [eax], ch
adc al, 0x41
add byte [eax + 0x14], dl
inc ecx
add byte [eax + 0x14], dl
inc ecx
add byte [eax + 0x14], dl
inc ecx
add byte [edx + 0x14], dl
inc ecx
add ch, cl
jmp 0x43e5eb
add byte [ecx], al
add byte [eax], al
add byte [edx + 0x1004115], al
add byte [eax], al
add byte [ebx], cl
hlt
sti
inc eax
add byte [edi*8 - 0x429ffc0], ch
inc eax
add byte [edx + 0x210040ff], dl
cld
inc eax
add al, dh
sti
inc eax
add byte [ecx], ah
cld
inc eax
add al, dh
sti
inc eax
add byte [eax + 0x30040ff], bl
cld
inc eax
add byte [esi - 0x45ffbf01], ch
inc dword [eax]
invalid
and eax, 0x1a9e0041
inc ecx
add byte [edi - 0x58ffbee6], dh
push ds
inc ecx
add byte [edi + ebx], bh
inc ecx
add byte [edx + 0x1f], al
inc ecx
add byte [eax + 0x41], bh
add byte [ebp + 0x27004120], al
xor eax, dword [ecx]
mov esp, 0x9d004133
xor eax, dword [ecx]
mov esp, 0xcd004133
das
inc ecx
add byte [eax + 0x2b00412f], dl
xor dword [ecx], eax
dec esi
xor dword [ecx], eax
cmp dh, byte [ecx]
inc ecx
add ch, bh
sub eax, 0x31490041
inc ecx
add al, dl
and byte [ecx], al
pushfd
sub eax, 841482305
inc ecx
add byte [esi + 0x3600412e], ah
xor al, byte [ecx]
pushfd
sub eax, 842399809
inc ecx
add byte [ecx - 0x33ffbedf], bh
sub eax, 0x2ddf0041
inc ecx
add byte [edx], ah
sub byte [ecx], al
xor byte [ecx], ch
inc ecx
add byte [eax], dh
sub byte [ecx], al
xor byte [ecx], ch
inc ecx
add byte [eax + 0x2a], al
inc ecx
add byte [edx + 0x6b00412a], ah
sub al, byte [ecx]
mov al, byte [0xa000412a]
sub al, byte [ecx]
mov byte [0xa000412a], al
sub al, byte [ecx]
mov al, 0x2a
inc ecx
add byte [eax - 0x4fffbed6], dh
sub al, byte [ecx]
mov dl, 0x2a
inc ecx
add bl, cl
sub al, byte [ecx]
iretd
and eax, 0x25420041
inc ecx
add byte [eax + 0x25], ah
inc ecx
add byte [eax + 0x25], cl
inc ecx
add byte [edi + 0x25], ch
inc ecx
add byte [eax + 0x25], ah
inc ecx
add byte [ecx - 0x60ffbedb], al
and eax, 0x25b40041
inc ecx
add al, al
and eax, 0x25d00041
inc ecx
add al, dl
and eax, 0x15d00041
inc ecx
add al, dl
and eax, 0x370b0041
inc ecx
add byte [edi + esi], ch
inc ecx
add byte [ebx + 0x37], bl
inc ecx
add byte [ebx - 0x64ffbec9], bl
aaa
inc ecx
add byte [eax - 0x4fffbec9], dh
aaa
inc ecx
add byte [edx - 0x4dffbec9], dh
aaa
inc ecx
add byte [edx - 0x9ffbec9], dh
aaa
inc ecx
add byte [ecx + 0x38], dh
inc ecx
add byte [edx + 0x38], bh
inc ecx
add byte [edx + 0x38], bh
inc ecx
add byte [ecx], al
add byte [eax], al
add byte [edx + 0x38], bh
inc ecx
add byte [eax - 0x73ffbec8], al
cmp byte [ecx], al
invalid