Function at 0x420302
Capabilities:
Contain obfuscated stackstrings
Encode data using xor

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x454
mov dword [esp + 0x4c], 0
mov dword [esp + 0x48], 0
mov dword [esp + 0x44], 0
mov dword [esp + 0x54], 0xf96efb91
mov dword [esp + 0x58], 0xfd59ff63
mov dword [esp + 0x5c], 0xf120f36f
mov dword [esp + 0x60], 0xf57ef76b
mov dword [esp + 0x64], 0xe9eaeb6f
mov byte [esp + 0x68], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0x14
ja 0x41edce
nop
nop
mov eax, dword [esp]
mov ecx, dword [esp]
movzx ecx, byte [esp + ecx + 0x54]
add eax, 0xc48498ff
xor eax, ecx
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x38]
add al, 5
mov ecx, dword [esp]
mov byte [esp + ecx + 0x54], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0x15
jb 0x41eda0
lea edi, [esp + 0x54]
lea ecx, [esp + 0x44]
push edi
call fcn.00433f10
shr eax, 0x1f
xor ebx, ebx
jmp dword [eax*4 + 0x43fd24]
lea ecx, [esp + 0x44]
push 0x410
call fcn.00434140
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x43fd3c]
xor ebx, ebx
jmp dword [0x43fd4c]
mov dword [esp + 0x54], 0xb6dfa0bd
mov dword [esp + 0x58], 0x584ed5b8
mov dword [esp + 0x5c], 0x4c554f29
mov dword [esp + 0x60], 0x335a4a2d
mov dword [esp + 0x64], 0x58272e32
mov dword [esp + 0x68], 0x5b3c2a25
mov dword [esp + 0x6c], 0x5e513a56
mov dword [esp + 0x70], 0x523b5c27
mov dword [esp + 0x74], 0x3a28222e
mov dword [esp + 0x78], 0x6a070d29
mov dword [esp + 0x7c], 0xc7360909
mov word [esp + 0x80], 0
mov byte [esp + 0x82], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0x2e
ja 0x41eece
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 + 0x54]
add eax, 0xc9508c7a
xor eax, ecx
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x38]
add al, 0x9e
mov ecx, dword [esp]
mov byte [esp + ecx + 0x54], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0x2f
jb 0x41eea0
lea eax, [esp + 0x38]
lea ecx, [esp + 0x44]
push 0
push 0x2b
push edi
push eax
call fcn.004347a0
mov ebp, dword [esp + 0x38]
mov ebx, dword [esp + 0x3c]
xor eax, eax
cmp ebp, ebx
sete al
mov dword [esp + 0x28], ebx
jmp dword [eax*4 + 0x43fd54]
mov eax, ebx
sub eax, ebp
sar eax, 2
imul eax, eax, 0x421
push eax
call fcn.00409690
add esp, 4
mov dword [esp + 0x20], 0
xor ecx, ecx
cmp ebp, ebx
setne cl
mov dword [esp + 0x1c], eax
mov dword [esp + 0x14], eax
jmp dword [ecx*4 + 0x43fd5c]
add ebp, 4
xor eax, eax
mov ebx, dword [esp + 0x28]
cmp ebp, ebx
setne al
jmp dword [eax*4 + 0x43fd5c]
mov esi, dword [ebp]
push 0x400
push 0
push edi
call fcn.00409710
add esp, 0xc
mov eax, esp
lea ecx, [esp + 0x44]
push eax
push 0x400
push edi
push esi
call fcn.00434610
cmp eax, 0xc0000000
setae al
cmp dword [esp], 0
sete cl
or cl, al
movzx eax, cl
jmp dword [eax*4 + 0x43fd6c]
mov eax, 1
jmp 0x41ef92
xor eax, eax
mov ecx, dword [case.0x41eef4.10]
nop
nop
nop
nop
nop
nop
nop
nop
jmp ecx
jmp dword [eax*4 + 0x43fd84]
mov byte [esp + 0x453], 0
movzx eax, byte [esp + 0x54]
xor ecx, ecx
test al, al
je 0x41efcf
mov ecx, edi
nop
nop
cmp al, 0x2e
je 0x41efcf
movzx eax, byte [ecx + 1]
inc ecx
test al, al
jne 0x41efc0
xor ecx, ecx
xor eax, eax
test ecx, ecx
setne al
jmp dword [eax*4 + 0x43fd8c]
movzx eax, byte [ecx + 1]
inc ecx
xor ebx, ebx
test al, al
mov esi, ecx
je 0x41f003
nop
nop
nop
nop
nop
nop
cmp al, 0x2e
je 0x41efff
movzx eax, byte [ecx + 1]
inc ecx
test al, al
jne 0x41eff0
jmp 0x41f001
mov ebx, ecx
mov ecx, esi
xor eax, eax
test ebx, ebx
setne al
jmp dword [eax*4 + 0x43fd94]
mov edx, ebx
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
movzx eax, byte [ebx - 1]
cmp eax, 0x3d
je 0x41f040
cmp eax, 0x2e
jne 0x41f041
dec edi
mov eax, esi
movzx eax, byte [esi + edx - 2]
cmp eax, 0x3d
mov dword [esp + 0x18], edx
je 0x41f056
cmp eax, 0x2e
jne 0x41f05d
mov dword [esp + 0x24], ebp
dec edi
jmp 0x41f061
mov dword [esp + 0x24], ebp
mov dword [esp + 0x50], edi
lea eax, [edi + 1]
push eax
call fcn.00409690
add esp, 4
mov dword [esp + 0x2c], eax
cmp ebx, esi
je 0x41f160
mov edi, esi
xor esi, esi
mov ebp, 2
mov dword [esp + 0x30], edi
jmp 0x41f0a6
mov esi, ebx
lea eax, [ebp + 4]
add ebp, 2
cmp ebp, edx
mov ebp, eax
mov edi, dword [esp + 0x30]
jae 0x41f160
movzx eax, byte [edi + ebp - 2]
push eax
call fcn.00416710
add esp, 4
mov ebx, eax
movzx eax, byte [edi + ebp - 1]
push eax
call fcn.00416710
add esp, 4
shl bl, 2
mov ah, al
shr ah, 4
and ah, 3
or ah, bl
mov ecx, edi
lea ebx, [esi + 1]
mov edx, dword [esp + 0x2c]
mov dword [esp + 0x34], esi
mov byte [edx + esi], ah
mov edi, edx
mov edx, dword [esp + 0x18]
cmp ebp, edx
jae 0x41f090
mov byte [esp + 0xf], al
movzx eax, byte [ecx + ebp]
push eax
call fcn.00416710
mov edx, dword [esp + 0x1c]
add esp, 4
cmp al, 0x40
mov esi, ebx
je 0x41f092
movzx ecx, byte [esp + 0xf]
shl cl, 4
mov ebx, eax
shr al, 2
and al, 0xf
or al, cl
mov ecx, dword [esp + 0x34]
lea esi, [ecx + 2]
mov byte [edi + ecx + 1], al
lea eax, [ebp + 1]
cmp eax, edx
jae 0x41f092
mov eax, dword [esp + 0x30]
movzx eax, byte [eax + ebp + 1]
push eax
call fcn.00416710
mov edx, dword [esp + 0x1c]
add esp, 4
cmp al, 0x40
je 0x41f092
shl bl, 6
add al, bl
mov esi, dword [esp + 0x34]
mov byte [edi + esi + 2], al
add esi, 3
jmp 0x41f092
mov eax, dword [esp + 0x50]
mov esi, dword [esp + 0x2c]
mov byte [esi + eax], 0
push esi
call fcn.00402490
add esp, 4
mov ebx, eax
jmp dword [0x43fd9c]
push esi
call fcn.004096a0
add esp, 4
mov eax, dword [case.0x41f00a.3]
nop
nop
nop
nop
nop
jmp eax
push ebx
call fcn.00402f40
add esp, 4
xor ecx, ecx
test eax, eax
setne cl
lea edi, [esp + 0x54]
mov ebp, dword [esp + 0x24]
jmp dword [ecx*4 + 0x43fdb4]
jmp 0x41f289
mov dword [esp], 0xe94c7071
mov dword [esp + 4], 0
mov dword [esp + 0x10], 0
mov ecx, dword [esp + 0x10]
cmp ecx, 7
ja 0x41f213
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, 0xe2aacd7
xor ecx, edx
mov dword [esp + 8], ecx
mov ecx, dword [esp + 8]
add cl, 0xcd
mov edx, dword [esp + 0x10]
mov byte [esp + edx], cl
inc dword [esp + 0x10]
mov ecx, dword [esp + 0x10]
cmp ecx, 8
jb 0x41f1e0
mov ecx, esp
push ecx
push eax
call fcn.00402d00
add esp, 8
xor ecx, ecx
test eax, eax
setne cl
jmp dword [ecx*4 + 0x43fdbc]
mov edx, dword [esp + 0x14]
jmp 0x41f258
movzx ecx, byte [eax]
test cl, cl
mov edx, dword [esp + 0x14]
je 0x41f24b
inc eax
nop
mov byte [edx], cl
inc edx
movzx ecx, byte [eax]
inc eax
test cl, cl
jne 0x41f240
mov byte [edx], 0
mov byte [edx], 0x3a
mov byte [edx + 1], 0x20
add edx, 2
movzx eax, byte [esp + 0x54]
test al, al
je 0x41f27b
lea ecx, [esp + 0x55]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [edx], al
inc edx
movzx eax, byte [ecx]
inc ecx
test al, al
jne 0x41f270
mov byte [edx], 0xa
inc edx
mov dword [esp + 0x14], edx
mov al, 1
mov dword [esp + 0x20], eax
push ebx
call fcn.004034e0
add esp, 4
add ebp, 4
xor eax, eax
mov ebx, dword [esp + 0x28]
cmp ebp, ebx
setne al
jmp dword [eax*4 + 0x43fd5c]
mov ebx, dword [esp + 0x20]
mov eax, ebx
and al, 1
movzx eax, al
jmp dword [eax*4 + 0x43fd64]
jmp 0x41f390
xor esi, esi
test ebp, ebp
jne 0x41f3c5
jmp 0x41f3d2
mov eax, dword [esp + 0x14]
mov byte [eax], 0
mov dword [esp + 0x54], 0x474241b1
mov dword [esp + 0x58], 0x435f5e55
mov dword [esp + 0x5c], 0x484c4e51
mov dword [esp + 0x60], 0x6a7a96b3
mov dword [esp + 0x64], 0x9fb57461
mov dword [esp + 0x68], 0x7963667b
mov dword [esp + 0x6c], 0x7376bf7b
mov word [esp + 0x70], 0xd568
mov dword [esp + 0x72], 0
mov byte [esp + 0x76], 0
mov dword [esp + 8], 0
mov eax, dword [esp + 8]
cmp eax, 0x22
ja 0x41f371
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp + 8]
mov ecx, dword [esp + 8]
movzx ecx, byte [esp + ecx + 0x54]
add eax, 0x47cac654
xor eax, ecx
mov dword [esp], eax
mov eax, dword [esp]
add al, 0x5c
mov ecx, dword [esp + 8]
mov byte [esp + ecx + 0x54], al
inc dword [esp + 8]
mov eax, dword [esp + 8]
cmp eax, 0x23
jb 0x41f340
mov ecx, dword [esp + 0x468]
mov edx, dword [esp + 0x1c]
mov esi, dword [esp + 0x14]
sub esi, edx
lea eax, [esp + 0x54]
push esi
push edx
push eax
call fcn.00409fc0
mov ebx, eax
mov eax, dword [case.0x41f226.5]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp eax
jmp dword [0x43fdd4]
push dword [esp + 0x1c]
call fcn.004096a0
add esp, 4
and bl, 1
mov esi, ebx
mov ebp, dword [esp + 0x38]
mov ebx, dword [esp + 0x3c]
test ebp, ebp
je 0x41f3d2
cmp ebp, ebx
je 0x41f3d2
push ebp
call fcn.004096a0
add esp, 4
mov ebx, esi
lea ecx, [esp + 0x44]
call fcn.004342c0
mov eax, ebx
add esp, 0x454
pop esi
pop edi
pop ebx
pop ebp
ret
int3
mov dword [esp + 0x2c], 0x578849ac
mov dword [esp + 0x30], 0x53995599
mov dword [esp + 0x34], 0x5f815199
mov dword [esp + 0x38], 0x5b845d80
mov dword [esp + 0x3c], 0x67825981
mov dword [esp + 0x40], 0x63a365b1
mov dword [esp + 0x44], 0x6fa661af
mov dword [esp + 0x48], 0x6bb86da5
mov dword [esp + 0x4c], 0x779269a5
mov dword [esp + 0x50], 0x73a175ab
mov dword [esp + 0x54], 0x7fa271ba
mov dword [esp + 0x58], 0x7bbb7da7
mov dword [esp + 0x5c], 0x7cb79a6
mov dword [esp + 0x60], 0x3d805e0
mov dword [esp + 0x64], 0xffa01e1
mov dword [esp + 0x68], 0xbe70df6
mov dword [esp + 0x6c], 0x17c909ec
mov dword [esp + 0x70], 0x13ff15e8
mov dword [esp + 0x74], 0x1feb11f1
mov word [esp + 0x78], 0x1d1c
mov byte [edi + 2], 0
mov word [edi], 0
mov dword [esp], 0
mov ecx, dword [esp]
cmp ecx, 0x50
ja 0x41f510
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [esp]
mov edx, dword [esp]
movzx edx, byte [esp + edx + 0x2c]
add ecx, 0x7aa8f68e
xor ecx, edx
mov dword [esp + 8], ecx
mov ecx, dword [esp + 8]
add cl, 0x3a
mov edx, dword [esp]
mov byte [esp + edx + 0x2c], cl
inc dword [esp]
mov ecx, dword [esp]
cmp ecx, 0x51
jb 0x41f4e0
lea ecx, [esp + 0x1c]
lea ebp, [esp + 0x2c]
push 0
push 0
push eax
push ecx
push ebp
call fcn.004386d0
add esp, 0x14
shr eax, 0x1f
jmp dword [eax*4 + 0x43fde4]
mov ebx, esi
lea edi, [esp + 0x9c]
lea eax, [esp + 0x24]
push edi
push eax
push 0
push 0
push 0
push 0
push 0
push 0
push dword [esp + 0x3c]
call fcn.00438b10
add esp, 0x24
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x43fdec]
mov ecx, dword [esp + 0x9c]
lea eax, [ecx*2 + 2]
inc ecx
jns 0x41f57a
mov eax, 0xffffffff
push eax
call fcn.00409690
add esp, 4
mov esi, eax
mov dword [esp + 0x2c], 0x73c471b9
mov dword [esp + 0x30], 0x7fc27dcf
mov dword [esp + 0x34], 0x7bce79d9
mov dword [esp + 0x38], 0x479645f0
mov dword [esp + 0x3c], 0x43fe41e1
mov dword [esp + 0x40], 0x4f4e4de4
mov byte [esp + 0x44], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0x18
ja 0x41f5fe
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp]
mov ecx, dword [esp]
movzx ecx, byte [esp + ecx + 0x2c]
add eax, 0xc74b7214
xor eax, ecx
mov dword [esp + 8], eax
mov eax, dword [esp + 8]
add al, 0x9c
mov ecx, dword [esp]
mov byte [esp + ecx + 0x2c], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0x19
jb 0x41f5d0
push edi
push esi
push 0
push ebp
push dword [esp + 0x2c]
call fcn.00439110
add esp, 0x14
shr eax, 0x1f
mov ebx, esi
jmp dword [eax*4 + 0x43fdf4]
xor ebx, ebx
jmp dword [0x43fdfc]
push esi
call fcn.004096a0
add esp, 4
nop
nop
nop
nop
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x2c], 0x14151617
mov word [esp + 0x30], 0
mov dword [esp], 0
mov ecx, dword [esp]
cmp ecx, 5
ja 0x41f690
nop
nop
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 + 0x2c]
add ecx, 0xc84c9b04
xor ecx, edx
mov dword [esp + 8], ecx
mov ecx, dword [esp + 8]
add cl, 0xec
mov edx, dword [esp]
mov byte [esp + edx + 0x2c], cl
inc dword [esp]
mov ecx, dword [esp]
cmp ecx, 6
jb 0x41f660
mov ecx, dword [0x443d54]
test ecx, ecx
je 0x41f6e0
mov edx, dword [esp + 0x2c]
xor esi, esi
mov edi, dword [0x443d58]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp dword [edi + esi*8], 0x625b6034
je 0x41f6d4
inc esi
cmp ecx, esi
jne 0x41f6b0
jmp 0x41f6e0
mov eax, 4
xor ecx, ecx
cmp eax, 4
setb cl
jmp dword [ecx*4 + 0x43fe24]
mov ecx, dword [edi + esi*8 + 4]
cmp ecx, edx
jne case.default.0x41f6e9
nop
nop
nop
nop
xor eax, eax
mov esi, ebx
test ebx, ebx
setne al
jmp dword [eax*4 + 0x43fe04]
push ebp
call fcn.00437d50
add esp, 4
cmp dword [esp + 0x2c], 1
sete cl
and cl, al
movzx ecx, cl
xor eax, eax
lea edi, [esp + 0x7a]
jmp dword [ecx*4 + 0x43fe0c]
mov ecx, dword [case.0x41f751.2]
nop
nop
nop
nop
nop
nop
nop
mov eax, 2
jmp ecx
xor ecx, ecx
cmp eax, 4
setb cl
jmp dword [ecx*4 + 0x43fe24]
push eax
push 1
push dword [0x443d5c]
push ecx
call fcn.00435eb0
add esp, 0x10
xor eax, eax
mov esi, ebx
test ebx, ebx
setne al
jmp dword [eax*4 + 0x43fe04]
mov eax, 2
xor ecx, ecx
cmp eax, 4
setb cl
lea edi, [esp + 0x7a]
jmp dword [ecx*4 + 0x43fe24]
xor ecx, ecx
test eax, eax
sete cl
jmp dword [ecx*4 + 0x43fe2c]
jmp dword [0x43fe3c]
mov eax, 0x20119
xor ecx, ecx
jmp dword [ecx*4 + 0x43fddc]
xor eax, eax
test esi, esi
sete al
jmp dword [eax*4 + 0x43fe44]
mov ecx, esi
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, ecx
add ecx, 2
cmp word [eax], 0
jne 0x41f7c0
sub eax, esi
mov ecx, dword [case.0x41f751.20]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp ecx
cmp eax, 0xffffffd9
jge 0x41f7f5
mov eax, 0xffffffff
jmp 0x41f7f8
xor ebx, ebx
jmp 0x4202e3
add eax, 0x26
push eax
call fcn.00409690
add esp, 4
mov ebx, eax
mov dword [esp + 0x2c], 0x16b0760
mov dword [esp + 0x30], 0xd740371
mov dword [esp + 0x34], 0x9650f62
mov dword [esp + 0x38], 0x156e0b61
mov dword [esp + 0x3c], 0x11671779
mov dword [esp + 0x40], 0x1d7c1366
mov dword [esp + 0x44], 0x19771f77
mov dword [esp + 0x48], 0x25641b2e
mov dword [esp + 0x4c], 0x21482748
mov dword [esp + 0x50], 0x2320
mov byte [esp + 0x54], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0x28
ja 0x41f8a7
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp]
mov ecx, dword [esp]
movzx ecx, byte [esp + ecx + 0x2c]
lea edx, [eax + ecx]
inc eax
and eax, ecx
add eax, eax
sub edx, eax
add edx, 0xb826301
mov dword [esp + 8], edx
mov eax, dword [esp + 8]
add al, 0xfb
mov ecx, dword [esp]
mov byte [esp + ecx + 0x2c], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0x29
jb 0x41f870
movzx ecx, word [esi]
mov eax, ebx
test cx, cx
je 0x41f8d1
lea edx, [esi + 2]
mov eax, ebx
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 0x41f8c0
mov word [eax], 0
movzx ecx, word [esp + 0x2c]
test cx, cx
je 0x41f901
lea edx, [esp + 0x2e]
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 0x41f8f0
mov word [eax], 0
jmp dword [0x43fe5c]
push esi
call fcn.004096a0
add esp, 4
xor eax, eax
cmp word [ebx], 0x5b
sete al
jmp dword [eax*4 + 0x43fe64]
xor eax, eax
cmp word [ebx], 0x5b
sete al
jmp dword [eax*4 + 0x43fe64]
mov dword [esp + 0x2c], 0xff20f93f
mov dword [esp + 0x30], 0xe305fd00
mov dword [esp + 0x34], 0xe774e173
mov dword [esp + 0x38], 0xeb03e50e
mov dword [esp + 0x3c], 0xef12e903
mov dword [esp + 0x40], 0x9301ed0b
mov dword [esp + 0x44], 0x977c9102
mov dword [esp + 0x48], 0x9b71957d
mov dword [esp + 0x4c], 0x9f04994a
mov dword [esp + 0x50], 0x83689d78
mov dword [esp + 0x54], 0x8180
mov byte [esp + 0x58], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0x2c
ja 0x41f9e7
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 + 0x2c]
lea edx, [eax + 0x2a]
and edx, ecx
add eax, ecx
add edx, edx
sub eax, edx
add eax, 0x6ae3012a
mov dword [esp + 8], eax
mov eax, dword [esp + 8]
add al, 0x2e
mov ecx, dword [esp]
mov byte [esp + ecx + 0x2c], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0x2d
jb 0x41f9b0
lea eax, [esp + 0x2c]
push 0
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_CopyFileW]
lea eax, [esp + 0x1c]
push 0x60
push 3
push 0x120089
push eax
push ebx
call fcn.00437f60
add esp, 0x14
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x43fe6c]
xor esi, esi
xor edi, edi
jmp dword [0x43fecc]
push ebx
call fcn.004096a0
add esp, 4
xor eax, eax
cmp esi, edi
sete al
jmp dword [eax*4 + 0x43fed4]
xor ebx, ebx
test esi, esi
jne 0x4202a8
jmp 0x4202e3
mov dword [esp + 0x98], ebx
jmp dword [0x43fe78]
lea eax, [esp + 0x24]
push 0
push eax
push dword [esp + 0x24]
call fcn.004382c0
add esp, 0xc
nop
nop
nop
nop
nop
nop
nop
nop
lea eax, [esp + 0x24]
push 0
push eax
push dword [esp + 0x24]
call fcn.004382c0
add esp, 0xc
jmp dword [0x43fe7c]
not eax
shr eax, 0x1f
xor edi, edi
xor ebp, ebp
jmp dword [eax*4 + 0x43fe84]
mov esi, dword [esp + 0x24]
lea eax, [esi + 1]
push eax
call fcn.00409690
add esp, 4
push 0
push esi
mov dword [esp + 0x94], eax
push eax
push dword [esp + 0x28]
call fcn.004383a0
add esp, 0x10
not eax
shr eax, 0x1f
xor edi, edi
xor ebp, ebp
jmp dword [eax*4 + 0x43fe8c]
mov esi, dword [esp + 0x24]
mov edi, dword [esp + 0x8c]
mov byte [edi + esi], 0
push 0x20
call fcn.00409690
add esp, 4
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov dword [eax + 0x18], 0xffffffff
mov dword [eax + 0x14], 0
mov dword [eax + 0x10], 0
mov dword [eax], 0
mov dword [esp + 0x88], eax
mov ecx, eax
push esi
push edi
call fcn.004218f0
movzx eax, al
xor edi, edi
xor ebp, ebp
jmp dword [eax*4 + 0x43fe94]
mov dword [esp + 0x2c], 0x5da856b9
mov dword [esp + 0x30], 0xa250a059
mov dword [esp + 0x34], 0x5dadb19d
mov dword [esp + 0x38], 0x889ba456
mov dword [esp + 0x3c], 0x66959868
mov dword [esp + 0x40], 0x909fb0a1
mov dword [esp + 0x44], 0x6568606d
mov word [esp + 0x48], 0xfb65
mov dword [esp + 0x4a], 0
mov byte [esp + 0x4e], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0x22
ja 0x41fbbe
nop
nop
nop
nop
nop
mov eax, dword [esp]
mov ecx, dword [esp]
movzx ecx, byte [esp + ecx + 0x2c]
add eax, 0xbfc51fd1
xor eax, ecx
mov dword [esp + 8], eax
mov eax, dword [esp + 8]
add al, 0xeb
mov ecx, dword [esp]
mov byte [esp + ecx + 0x2c], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0x23
jb 0x41fb90
lea eax, [esp + 0x2c]
mov ecx, dword [esp + 0x88]
push eax
call fcn.00421b30
xor ecx, ecx
test eax, eax
setne cl
xor ebp, ebp
jmp dword [ecx*4 + 0x43fe9c]
jmp dword [0x43febc]
mov esi, dword [esp + 0x88]
mov ecx, esi
call fcn.00421ca0
push esi
call fcn.004096a0
add esp, 4
jmp dword [0x43fec4]
jmp dword [0x43feac]
add eax, 8
xor esi, esi
mov ecx, dword [eax]
xor eax, eax
test ecx, ecx
setne al
xor edi, edi
xor ebx, ebx
xor ebp, ebp
jmp dword [eax*4 + 0x43feb4]
not eax
mov ecx, dword [esp + 0x10]
mov ebx, dword [esp + 0x28]
mov edx, dword [esp + 0x80]
mov dword [esi + edx + 4], eax
add edi, 8
add ecx, 4
mov ecx, dword [ecx]
xor eax, eax
test ecx, ecx
setne al
mov ebp, esi
jmp dword [eax*4 + 0x43feb4]
mov ebp, dword [ecx]
mov eax, edi
sub eax, esi
cmp edi, ebx
mov dword [esp + 0x80], eax
mov dword [esp + 0x10], ecx
mov dword [esp + 0x28], ebx
jne 0x41fd11
sar eax, 3
inc eax
mov ecx, ebx
sub ecx, esi
sar ecx, 3
mov edx, ecx
shr edx, 1
mov edi, edx
xor edi, ecx
and edx, ecx
lea edi, [edi + edx*2]
cmp edi, eax
ja 0x41fca8
mov edi, eax
lea eax, [edi*8]
push eax
call fcn.00409690
add esp, 4
mov dword [esp + 0x18], eax
test esi, esi
je 0x41fcfb
mov ebx, dword [esp + 0x28]
cmp esi, ebx
mov edx, dword [esp + 0x18]
je 0x41fcf2
xor eax, eax
nop
nop
mov ecx, dword [esi + eax]
mov dword [edx + eax], ecx
mov ecx, dword [esi + eax + 4]
mov dword [edx + eax + 4], ecx
mov dword [esi + eax], 0
lea ecx, [esi + eax]
add ecx, 8
add eax, 8
cmp ecx, ebx
jne 0x41fcd0
push esi
call fcn.004096a0
add esp, 4
mov esi, dword [esp + 0x18]
lea eax, [esi + edi*8]
mov dword [esp + 0x28], eax
mov edi, esi
mov eax, dword [esp + 0x80]
add edi, eax
mov dword [esp + 0x84], edi
mov dword [esi + eax], 0
mov dword [esp + 0x18], esi
mov dword [esi + eax + 4], 0
mov ebx, 0xffffffff
xor eax, eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov esi, eax
cmp byte [ebp + ebx + 1], 0
lea ebx, [ebx + 1]
lea eax, [eax + 1]
jne 0x41fd40
lea edi, [ebx + 1]
push edi
mov dword [esp + 0x18], edi
call fcn.00409690
add esp, 4
mov edx, eax
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x80]
mov dword [eax + ecx], edx
mov eax, edx
mov ecx, edi
shr ecx, 2
mov edx, ebp
mov edi, eax
xchg esi, edx
rep movsd dword es:[edi], dword [esi]
xchg esi, edx
mov ecx, dword [esp + 0x14]
mov edx, ecx
and edx, 0xfffffffc
add eax, edx
add edx, ebp
and ecx, 3
mov dword [esp + 0x94], ecx
shr ecx, 1
mov dword [esp + 0x20], edx
mov dword [esp + 0x90], eax
mov edi, eax
mov eax, dword [esp + 0x20]
xchg esi, eax
rep movsw word es:[edi], word [esi]
xchg esi, eax
mov edi, dword [esp + 0x14]
mov ecx, edi
xor ecx, 2
and ecx, dword [esp + 0x94]
je 0x41fdda
and edi, 2
add edx, edi
mov eax, dword [esp + 0x90]
add eax, edi
push ecx
push edx
push eax
call fcn.004096c0
add esp, 0xc
test ebx, ebx
mov edi, dword [esp + 0x84]
je 0x41fdf1
cmp ebx, 1
jne 0x41fdfc
mov eax, 0xffffffff
jmp 0x41fe57
xor eax, eax
mov esi, dword [esp + 0x18]
jmp 0x41fc42
and esi, 0xfffffffe
mov eax, 0xffffffff
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, eax
shr ecx, 8
movzx edx, byte [ebp]
xor edx, eax
xor edx, 0x3fffff00
or eax, 0xff
and eax, edx
xor ecx, dword [eax*4 + 0x43b5c0]
mov eax, ecx
shr eax, 8
movzx edx, byte [ebp + 1]
add ebp, 2
xor edx, ecx
xor edx, 0x3fffff00
or ecx, 0xff
and ecx, edx
xor eax, dword [ecx*4 + 0x43b5c0]
add esi, 0xfffffffe
jne 0x41fe10
test bl, 1
mov esi, dword [esp + 0x18]
je 0x41fc40
mov ecx, eax
shr ecx, 8
movzx edx, byte [ebp]
xor edx, eax
xor edx, 0x3fffff00
or eax, 0xff
and eax, edx
xor ecx, dword [eax*4 + 0x43b5c0]
mov eax, ecx
jmp 0x41fc40
jmp dword [0x43fec4]
push dword [esp + 0x8c]
call fcn.004096a0
add esp, 4
mov ebx, edi
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x2c], 0x14151617
mov word [esp + 0x30], 0
mov dword [esp], 0
mov ecx, dword [esp]
cmp ecx, 5
ja 0x41ff00
nop
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 + 0x2c]
add ecx, 0xc84c9b04
xor ecx, edx
mov dword [esp + 8], ecx
mov ecx, dword [esp + 8]
add cl, 0xec
mov edx, dword [esp]
mov byte [esp + edx + 0x2c], cl
inc dword [esp]
mov ecx, dword [esp]
cmp ecx, 6
jb 0x41fed0
mov ecx, dword [0x443d54]
test ecx, ecx
je 0x41ff3c
mov edx, dword [esp + 0x2c]
xor esi, esi
mov edi, dword [0x443d58]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp dword [edi + esi*8], 0x625b6034
je 0x41ff30
inc esi
cmp ecx, esi
jne 0x41ff20
jmp 0x41ff3c
mov ecx, dword [edi + esi*8 + 4]
cmp ecx, edx
jne 0x420440
mov edi, ebx
mov esi, ebp
mov ebx, dword [esp + 0x98]
jmp dword [0x43fecc]
xor eax, eax
cmp esi, edi
sete al
jmp dword [eax*4 + 0x43fed4]
mov eax, edi
sub eax, esi
sar eax, 3
mov ecx, eax
and ecx, 0xfffffbde
mov edx, eax
and edx, 0x421
or eax, 0x421
imul eax, edx
xor edx, 0x421
imul edx, ecx
add eax, edx
push eax
call fcn.00409690
add esp, 4
mov dword [esp + 0x14], eax
mov eax, dword [0x443d50]
mov dword [esp + 0x18], esi
mov dword [esp + 0x2c], 0x57824965
mov dword [esp + 0x30], 0x53bd55a7
mov dword [esp + 0x34], 0x5faa51b1
mov dword [esp + 0x38], 0x5baa5d9d
mov dword [esp + 0x3c], 0x67aa59a8
mov dword [esp + 0x40], 0x639e6585
mov dword [esp + 0x44], 0x6f436181
mov dword [esp + 0x48], 0x6bb56d88
mov dword [esp + 0x4c], 0x779b6994
mov dword [esp + 0x50], 0x73877595
mov dword [esp + 0x54], 0x7f8a7194
mov dword [esp + 0x58], 0x7b957d8f
mov dword [esp + 0x5c], 0x7f27999
mov dword [esp + 0x60], 0x3f80536
mov dword [esp + 0x64], 0xfe401ec
mov dword [esp + 0x68], 0xd0c
mov byte [esp + 0x6c], 0
mov dword [esp], 0
mov ecx, dword [esp]
cmp ecx, 0x40
ja 0x420060
nop
mov ecx, dword [esp]
mov edx, dword [esp]
movzx edx, byte [esp + edx + 0x2c]
add ecx, 0x145c1d0e
xor ecx, edx
mov dword [esp + 8], ecx
mov ecx, dword [esp + 8]
add cl, 0xba
mov edx, dword [esp]
mov byte [esp + edx + 0x2c], cl
inc dword [esp]
mov ecx, dword [esp]
cmp ecx, 0x41
jb 0x420030
lea ecx, [esp + 0x2c]
lea edx, [esp + 0x1c]
push edx
push 0
push 0
push 0x1e
push ecx
push 0
call eax
mov esi, dword [esp + 0x1c]
test esi, esi
jns 0x420083
mov eax, 0xffffffff
jmp 0x420086
lea eax, [esi + esi]
mov ebp, edi
push eax
call fcn.00409690
add esp, 4
mov dword [esp + 0x28], eax
mov eax, dword [0x443d50]
mov dword [esp + 0x2c], 0x790e7b57
mov dword [esp + 0x30], 0x650b67e9
mov dword [esp + 0x34], 0x61f6630b
mov dword [esp + 0x38], 0x6dfe6f2f
mov dword [esp + 0x3c], 0x69266bfc
mov dword [esp + 0x40], 0x950a9707
mov dword [esp + 0x44], 0x91b993fb
mov dword [esp + 0x48], 0x9de39ff4
mov dword [esp + 0x4c], 0x99f19b00
mov dword [esp + 0x50], 0x851587f7
mov dword [esp + 0x54], 0x811683e0
mov dword [esp + 0x58], 0x8de38f11
mov dword [esp + 0x5c], 0x891e8be3
mov dword [esp + 0x60], 0xb52cb7da
mov dword [esp + 0x64], 0xb1d8b3d8
mov word [esp + 0x68], 0xbfb0
mov dword [esp + 0x6a], 0
mov word [esp + 0x6e], 0
mov dword [esp], 0
mov ecx, dword [esp]
cmp ecx, 0x43
ja 0x420179
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [esp]
mov edx, dword [esp]
movzx edx, byte [esp + edx + 0x2c]
lea edi, [ecx + 0x6b]
add ecx, edx
and edi, edx
add edi, edi
sub ecx, edi
add ecx, 0xbc7f2f6b
mov dword [esp + 8], ecx
mov ecx, dword [esp + 8]
add cl, 0xe9
mov edx, dword [esp]
mov byte [esp + edx + 0x2c], cl
inc dword [esp]
mov ecx, dword [esp]
cmp ecx, 0x44
jb 0x420140
lea ecx, [esp + 0x1c]
push ecx
push esi
mov esi, dword [esp + 0x30]
push esi
push 0x1e
lea ecx, [esp + 0x3c]
push ecx
push 0
call eax
lea eax, [esp + 0x24]
push 0x60
push 3
push 0x120089
push eax
push esi
call fcn.00437f60
add esp, 0x14
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x43fedc]
xor ebx, ebx
mov eax, dword [esp + 0x14]
mov dword [esp + 0x10], eax
mov edi, ebp
mov esi, dword [esp + 0x18]
jmp dword [0x43ffa4]
push dword [esp + 0x28]
call fcn.004096a0
add esp, 4
mov eax, ebx
and al, 1
movzx ecx, al
jmp dword [ecx*4 + 0x43ffac]
mov ebx, dword [esp + 0x10]
mov byte [ebx], 0
mov dword [esp + 0x2c], 0xb3aea959
mov dword [esp + 0x30], 0xd7c3bab5
mov dword [esp + 0x34], 0xd0d4d2c9
mov dword [esp + 0x38], 0xcede3217
mov dword [esp + 0x3c], 0x3b1dc4c9
mov dword [esp + 0x40], 0xc1d7c2df
mov dword [esp + 0x44], 0xcfc203c7
mov word [esp + 0x48], 0x75c0
mov dword [esp + 0x4a], 0
sub ebx, dword [esp + 0x14]
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0x21
mov ecx, dword [esp + 0xb4]
ja 0x42027e
nop
nop
nop
nop
nop
nop
mov eax, dword [esp]
mov edx, dword [esp]
movzx edx, byte [esp + edx + 0x2c]
add eax, 0xc0c71ba
xor eax, edx
mov dword [esp + 8], eax
mov eax, dword [esp + 8]
add al, 0x5e
mov edx, dword [esp]
mov byte [esp + edx + 0x2c], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0x22
jb 0x420250
push ebx
push dword [esp + 0x18]
lea eax, [esp + 0x34]
push eax
call fcn.00409fc0
mov ebx, eax
jmp dword [0x43ffb4]
push dword [esp + 0x14]
call fcn.004096a0
add esp, 4
and bl, 1
test esi, esi
je 0x4202e3
cmp esi, edi
je 0x4202e3
mov ebp, ebx
mov ebx, esi
jmp 0x4202c7
add esi, 8
cmp esi, edi
je 0x4202d8
mov eax, dword [esi]
test eax, eax
je 0x4202c0
push eax
call fcn.004096a0
add esp, 4
jmp 0x4202c0
push ebx
call fcn.004096a0
add esp, 4
mov ebx, ebp
mov eax, ebx
add esp, 0xa0
pop esi
pop edi
pop ebx
pop ebp
ret
mov eax, dword [case.0x4201ab.4]
mov edi, ebp
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp eax
lea eax, [esp + 0x9c]
push 0
push eax
push dword [esp + 0x2c]
call fcn.004382c0
add esp, 0xc
not eax
shr eax, 0x1f
mov dword [esp + 0x20], 0
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x10], ecx
jmp dword [eax*4 + 0x43fef4]
mov esi, dword [esp + 0x9c]
lea eax, [esi + 1]
push eax
call fcn.00409690
add esp, 4
push 0
push esi
mov dword [esp + 0x94], eax
push eax
push dword [esp + 0x30]
call fcn.004383a0
add esp, 0x10
not eax
shr eax, 0x1f
mov dword [esp + 0x20], 0
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x10], ecx
jmp dword [eax*4 + 0x43fefc]
mov esi, dword [esp + 0x9c]
mov ebx, dword [esp + 0x8c]
mov byte [ebx + esi], 0
push 0x20
call fcn.00409690
add esp, 4
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov dword [eax + 0x18], 0xffffffff
mov dword [eax + 0x14], 0
mov dword [eax + 0x10], 0
mov dword [eax], 0
mov dword [esp + 0x88], eax
mov ecx, eax
push esi
push ebx
call fcn.004218f0
movzx eax, al
mov dword [esp + 0x20], 0
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x10], ecx
jmp dword [eax*4 + 0x43ff04]
mov dword [esp + 0x2c], 0x5b545a7f
mov dword [esp + 0x30], 0x66546c47
mov dword [esp + 0x34], 0x5b676b13
mov dword [esp + 0x38], 0xc69604e
mov dword [esp + 0x3c], 0x221f1c2c
mov dword [esp + 0x40], 0x21217a6f
mov dword [esp + 0x44], 0x23111422
mov dword [esp + 0x48], 0x330d1473
mov dword [esp + 0x4c], 0xa90d
mov byte [esp + 0x50], 0
mov esi, dword [esp + 0x14]
jmp dword [0x43ff10]
push eax
push 1
push dword [0x443d5c]
push ecx
call fcn.00435eb0
add esp, 0x10
mov edi, ebx
mov esi, ebp
mov ebx, dword [esp + 0x98]
jmp dword [0x43fecc]
jmp dword [0x43ff94]
mov esi, dword [esp + 0x88]
mov ecx, esi
call fcn.00421ca0
push esi
call fcn.004096a0
add esp, 4
jmp dword [0x43ff9c]
jmp dword [0x43ff9c]
push dword [esp + 0x8c]
call fcn.004096a0
add esp, 4
mov eax, dword [esp + 0x24]
mov dword [esp + 0x2c], 0x14151617
mov word [esp + 0x30], 0
mov dword [esp], 0
mov ecx, dword [esp]
cmp ecx, 5
ja 0x4204f0
nop
nop
nop
mov ecx, dword [esp]
mov edx, dword [esp]
movzx edx, byte [esp + edx + 0x2c]
add ecx, 0xc84c9b04
xor ecx, edx
mov dword [esp + 8], ecx
mov ecx, dword [esp + 8]
add cl, 0xec
mov edx, dword [esp]
mov byte [esp + edx + 0x2c], cl
inc dword [esp]
mov ecx, dword [esp]
cmp ecx, 6
jb 0x4204c0
mov ecx, dword [0x443d54]
test ecx, ecx
je 0x420528
mov edx, dword [esp + 0x2c]
xor esi, esi
mov ebx, dword [0x443d58]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp dword [ebx + esi*8], 0x625b6034
je 0x420520
inc esi
cmp ecx, esi
jne 0x420510
jmp 0x420528
mov ecx, dword [ebx + esi*8 + 4]
cmp ecx, edx
jne 0x42054a
mov esi, dword [esp + 0x18]
mov ebx, dword [esp + 0x20]
jmp dword [0x43ffa4]
mov eax, ebx
and al, 1
movzx ecx, al
jmp dword [ecx*4 + 0x43ffac]
jmp dword [0x43ffb4]
push eax
push 1
push dword [0x443d5c]
push ecx
call fcn.00435eb0
add esp, 0x10
mov esi, dword [esp + 0x18]
mov ebx, dword [esp + 0x20]
jmp dword [0x43ffa4]
add esi, 4
mov esi, dword [esi]
xor eax, eax
test esi, esi
setne al
jmp dword [eax*4 + 0x43ff24]
mov edx, dword [esi]
cmp dword [esi + 0x18], 3
mov ebp, 0
jne case.default.0x4205a2
mov ebp, dword [esi + 0x10]
test edx, edx
setne al
test ebp, ebp
setne cl
and cl, al
movzx eax, cl
jmp dword [eax*4 + 0x43ff2c]
mov dword [esp + 0x98], edx
mov dword [esp + 0x84], edi
mov eax, ebp
nop
nop
nop
nop
nop
nop
nop
mov edi, eax
inc eax
cmp byte [edi], 0
jne case.default.0x4205f2
mov dword [esp + 0x94], esi
sub edi, ebp
inc edi
shr edi, 1
lea eax, [edi + 1]
push eax
call fcn.00409690
add esp, 4
movsx edx, byte [ebp]
xor ecx, ecx
test edx, edx
setne cl
mov dword [esp + 0x90], eax
jmp dword [ecx*4 + 0x43ff34]
inc ebp
mov byte [eax], cl
inc eax
movsx edx, byte [ebp]
xor ecx, ecx
test edx, edx
setne cl
jmp dword [ecx*4 + 0x43ff34]
lea ecx, [edx - 0x30]
cmp ecx, 0xa
jb 0x420623
mov ecx, 0xffffffff
or edx, 0x20
lea esi, [edx - 0x61]
cmp esi, 6
jae case.default.0x42063e
add edx, 0xffffffa9
mov ecx, edx
movsx edx, byte [ebp + 1]
xor ebx, ebx
test edx, edx
setne bl
jmp dword [ebx*4 + 0x43ff3c]
lea esi, [edx - 0x30]
cmp esi, 0xa
jb 0x420652
mov esi, 0xffffffff
or edx, 0x20
lea ebx, [edx - 0x61]
cmp ebx, 6
jae case.default.0x420678
add edx, 0xffffffa9
mov esi, edx
shl ecx, 4
or ecx, esi
add ebp, 2
mov byte [eax], cl
inc eax
movsx edx, byte [ebp]
xor ecx, ecx
test edx, edx
setne cl
jmp dword [ecx*4 + 0x43ff34]
mov byte [eax], 0
mov dword [esp + 0x80], 0
push 0
push 0x10
push 0
push dword [esp + 0xa4]
call fcn.00421d40
add esp, 0x10
xor ecx, ecx
mov ebp, dword [esp + 0x18]
cmp ebp, dword [esp + 0x84]
setne cl
jmp dword [ecx*4 + 0x43ff44]
mov ecx, dword [ebp]
mov dword [esp + 0x80], ecx
xor ecx, ecx
jmp dword [ecx*4 + 0x43ff54]
add ebp, 8
xor ebx, ebx
cmp ebp, dword [esp + 0x84]
setne bl
jmp dword [ebx*4 + 0x43ff44]
mov esi, dword [ebp + 4]
mov ebx, esi
shr ebx, 0x1c
shl esi, 4
or esi, 1
xor ebx, edx
xor esi, eax
xor ecx, ecx
or esi, ebx
sete cl
jmp dword [ecx*4 + 0x43ff4c]
mov ecx, 1
jmp dword [ecx*4 + 0x43ff54]
xor eax, eax
mov ebp, dword [esp + 0x80]
test ebp, ebp
setne al
jmp dword [eax*4 + 0x43ff5c]
mov edi, dword [esp + 0x84]
mov esi, dword [esp + 0x94]
mov ebx, dword [esp + 0x90]
jmp dword [0x43ff6c]
mov dword [esp + 0x2c], edi
mov ebx, dword [esp + 0x90]
mov dword [esp + 0x30], ebx
mov eax, 0xffffffff
mov esi, dword [esp + 0x94]
cmp byte [ebp + eax + 1], 0
lea eax, [eax + 1]
jne case.default.0x4207b9
mov dword [esp + 8], eax
mov dword [esp + 0xc], ebp
mov dword [esp], 0
mov dword [esp + 4], 0
push 0x6c625980
push dword [0x443d60]
call fcn.00437590
add esp, 8
mov ecx, esp
lea edx, [esp + 8]
push ecx
push 1
push 0
push 0
push edx
push 0
lea ecx, [esp + 0x44]
push ecx
call eax
xor ecx, ecx
test eax, eax
setne cl
mov edi, dword [esp + 0x84]
jmp dword [ecx*4 + 0x43ff64]
jmp dword [0x43ff6c]
movzx eax, byte [ebp]
test al, al
je 0x4207ee
mov ecx, ebp
inc ecx
mov ebp, dword [esp + 0x10]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [ebp], al
inc ebp
movzx eax, byte [ecx]
inc ecx
test al, al
jne 0x4207e0
jmp 0x4207f2
mov ebp, dword [esp + 0x10]
mov word [ebp], 0x203a
add ebp, 2
mov esi, dword [esp]
test esi, esi
je 0x42082c
mov eax, dword [esp + 4]
mov ecx, esi
and ecx, 3
je 0x420830
xor ebx, ebx
nop
movzx edx, byte [eax]
cmp dl, 1
sbb eax, 0xffffffff
mov byte [ebp + ebx], dl
inc ebx
cmp ecx, ebx
jne 0x420810
add ebp, ebx
mov ecx, esi
sub ecx, ebx
mov ebx, ebp
jmp 0x420832
mov ebx, ebp
jmp 0x42087a
mov ecx, esi
cmp esi, 4
jb 0x42087a
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx edx, byte [eax]
cmp dl, 1
sbb eax, 0xffffffff
mov byte [ebp], dl
movzx edx, byte [eax]
cmp dl, 1
sbb eax, 0xffffffff
mov byte [ebp + 1], dl
movzx edx, byte [eax]
cmp dl, 1
sbb eax, 0xffffffff
mov byte [ebp + 2], dl
movzx edx, byte [eax]
cmp dl, 1
sbb eax, 0xffffffff
lea ebx, [ebp + 4]
mov byte [ebp + 3], dl
mov ebp, ebx
add ecx, 0xfffffffc
jne 0x420840
mov byte [ebx], 0xa
mov esi, dword [esp + 0x94]
inc ebx
push 0xe050b307
push dword [0x443d48]
call fcn.00437590
add esp, 8
push dword [esp + 4]
call eax
mov al, 1
mov dword [esp + 0x20], eax
mov dword [esp + 0x10], ebx
mov ebx, dword [esp + 0x90]
jmp dword [0x43ff6c]
jmp dword [0x43ff74]
push ebx
call fcn.004096a0
add esp, 4
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
push ebx
call fcn.004096a0
add esp, 4
jmp dword [0x43ff80]
jmp dword [0x43ff8c]
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0x24
ja case.0x4201ab.13
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp]
mov ecx, dword [esp]
movzx ecx, byte [esp + ecx + 0x2c]
add eax, 0xf8c76532
xor eax, ecx
mov dword [esp + 8], eax
mov eax, dword [esp + 8]
add al, 6
mov ecx, dword [esp]
mov byte [esp + ecx + 0x2c], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0x25
jb 0x420900
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0x24
ja 0x42096e
nop
nop
nop
mov eax, dword [esp]
mov ecx, dword [esp]
movzx ecx, byte [esp + ecx + 0x2c]
add eax, 0xf8c76532
xor eax, ecx
mov dword [esp + 8], eax
mov eax, dword [esp + 8]
add al, 6
mov ecx, dword [esp]
mov byte [esp + ecx + 0x2c], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0x25
jb 0x420940
jmp dword [0x43ff18]
mov ecx, dword [esp + 0x88]
lea eax, [esp + 0x2c]
push eax
call fcn.00421b30
xor ecx, ecx
test eax, eax
setne cl
mov dword [esp + 0x20], 0
mov dword [esp + 0x10], esi
jmp dword [ecx*4 + 0x43ff1c]
add eax, 8
mov dword [esp + 0x20], 0
mov esi, dword [eax]
xor eax, eax
test esi, esi
setne al
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x10], ecx
jmp dword [eax*4 + 0x43ff24]
jmp eax
xor eax, eax
cmp ecx, 0xc
setne al
jmp dword [eax*4 + 0x43ffcc]
mov dword [esp + 0xb0], ecx
mov esi, dword [esp + ecx + 0x70]
mov ebp, 0xfffffffe
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp word [esi + ebp + 2], 0
lea ebp, [ebp + 2]
jne 0x420dc0
mov edi, ebp
sar edi, 1
mov eax, dword [esp + 0x90]
mov ecx, eax
and ecx, 1
xor eax, 1
add eax, edi
lea edx, [eax + ecx*2]
add edx, 0xc
test edx, edx
jns 0x420df1
mov eax, 0xffffffff
jmp 0x420dfb
lea eax, [eax + ecx*2]
lea eax, [eax*2 + 0x18]
push eax
call fcn.00409690
add esp, 4
mov ebx, eax
mov eax, dword [esp + 0x4c]
movzx ecx, word [eax]
mov eax, ebx
test cx, cx
je 0x420e31
mov edx, dword [esp + 0x98]
mov eax, ebx
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x420e20
mov word [eax], 0x5c
mov dword [esp + 0x14], 0x71a27fd0
mov dword [esp + 0x18], 0x75d773c1
mov dword [esp + 0x1c], 0x49ca77d7
mov dword [esp + 0x20], 0x4d9f4ba8
mov dword [esp + 0x24], 0x41ed4ff8
mov dword [esp + 0x28], 0x45e543f4
mov word [esp + 0x2c], 0x4744
lea ecx, [esp + 0x14]
mov word [ecx + 0x1e], 0
mov dword [ecx + 0x1a], 0
mov dword [esp], 0
mov ecx, dword [esp]
cmp ecx, 0x1f
ja 0x420ec0
nop
nop
nop
mov ecx, dword [esp]
mov edx, dword [esp]
movzx edx, byte [esp + edx + 0x14]
add ecx, 0x232bd715
xor ecx, edx
mov dword [esp + 0xc], ecx
mov ecx, dword [esp + 0xc]
add cl, 0x97
mov edx, dword [esp]
mov byte [esp + edx + 0x14], cl
inc dword [esp]
mov ecx, dword [esp]
cmp ecx, 0x20
jb 0x420e90
add eax, 2
movzx ecx, word [esi]
test cx, cx
je 0x420ee1
lea edx, [esi + 2]
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x420ed0
mov word [eax], 0
movzx ecx, word [esp + 0x14]
test cx, cx
je 0x420f11
lea edx, [esp + 0x16]
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 0x420f00
mov dword [esp + 0xa0], edi
mov word [eax], 0
lea eax, [esp + 0x8c]
push 0x60
push 3
push 0x120089
push eax
mov dword [esp + 0xbc], ebx
push ebx
call fcn.00437f60
add esp, 0x14
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x43ffdc]
xor ebx, ebx
jmp dword [0x44004c]
push dword [esp + 0xac]
call fcn.004096a0
add esp, 4
movzx eax, bl
jmp dword [eax*4 + 0x440054]
lea eax, [esp + 0x88]
push 0
push eax
push dword [esp + 0x94]
call fcn.004382c0
add esp, 0xc
not eax
shr eax, 0x1f
xor ebx, ebx
jmp dword [eax*4 + 0x43ffe4]
mov edi, dword [esp + 0x88]
lea eax, [edi + 1]
push eax
call fcn.00409690
add esp, 4
push 0
push edi
mov edi, eax
push eax
push dword [esp + 0x98]
call fcn.004383a0
add esp, 0x10
not eax
shr eax, 0x1f
xor ebx, ebx
jmp dword [eax*4 + 0x43ffec]
jmp dword [0x43fff8]
xor ebx, ebx
mov edi, dword [esp + 0x94]
mov esi, dword [esp + 0x7c]
jmp dword [0x44002c]
jmp dword [0x440080]
jmp dword [0x44001c]
push ebx
call fcn.004096a0
add esp, 4
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
push ebx
call fcn.004096a0
add esp, 4
jmp dword [0x440028]
xor ecx, ecx
test eax, eax
setne cl
xor ebx, ebx
jmp dword [ecx*4 + 0x440004]
jmp dword [0x440034]
mov dword [esp + 0xa8], eax
push eax
call fcn.00402f40
add esp, 4
mov dword [esp + 0x14], 0xd0d5c2c7
mov dword [esp + 0x18], 0xc3cec4ce
mov dword [esp + 0x1c], 0xd8ccd40e
mov dword [esp + 0x20], 0x3b363c36
mov dword [esp + 0x24], 0x28252d2d
mov word [esp + 0x28], 0x3421
mov byte [esp + 0x2a], 0xce
mov word [esp + 0x2b], 0
mov dword [esp], 0
mov ecx, dword [esp]
cmp ecx, 0x18
ja 0x4210b0
nop
mov ecx, dword [esp]
mov edx, dword [esp]
movzx edx, byte [esp + edx + 0x14]
add ecx, 0xa3240874
xor ecx, edx
mov dword [esp + 0xc], ecx
mov ecx, dword [esp + 0xc]
add cl, 0xbc
mov edx, dword [esp]
mov byte [esp + edx + 0x14], cl
inc dword [esp]
mov ecx, dword [esp]
cmp ecx, 0x19
jb 0x421080
lea ecx, [esp + 0x14]
push ecx
push eax
call fcn.004032f0
add esp, 8
mov ebx, eax
mov edx, 0xffffffff
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, edx
cmp byte [ebx + edx + 1], 0
lea edx, [edx + 1]
jne 0x4210d0
mov ecx, edx
and ecx, 3
mov eax, edx
or eax, 3
imul eax, ecx
xor ecx, 3
mov dword [esp + 8], ecx
mov ecx, edx
and ecx, 0xfffffffc
imul ecx, dword [esp + 8]
add eax, ecx
mov ecx, eax
shr ecx, 2
movzx eax, byte [ebx + edx - 1]
cmp eax, 0x3d
je 0x421110
cmp eax, 0x2e
jne 0x421111
dec ecx
movzx eax, byte [ebx + edx - 2]
cmp eax, 0x3d
mov dword [esp + 0x54], edx
mov dword [esp + 0x94], edi
je 0x42112b
cmp eax, 0x2e
jne 0x421132
mov dword [esp + 0x7c], esi
dec ecx
jmp 0x421136
mov dword [esp + 0x7c], esi
mov dword [esp + 0xa4], ecx
lea eax, [ecx + 1]
push eax
call fcn.00409690
add esp, 4
mov dword [esp + 0x50], eax
cmp dword [esp + 0x54], 0
je 0x42125e
xor esi, esi
mov edi, 2
mov dword [esp + 0x84], ebx
jmp 0x42118b
lea eax, [edi + 4]
add edi, 2
mov esi, dword [esp + 8]
cmp edi, edx
mov edi, eax
mov ebx, dword [esp + 0x84]
jae 0x42125e
movzx eax, byte [ebx + edi - 2]
push eax
call fcn.00416710
add esp, 4
mov ecx, ebx
mov ebx, eax
movzx eax, byte [ecx + edi - 1]
push eax
call fcn.00416710
mov edx, dword [esp + 0x58]
add esp, 4
mov bh, al
shl bl, 2
shr al, 4
and al, 3
or al, bl
lea ecx, [esi + 1]
mov dword [esp + 8], ecx
mov ecx, dword [esp + 0x50]
mov byte [ecx + esi], al
cmp edi, edx
jae 0x421170
mov dword [esp + 0x9c], esi
mov eax, dword [esp + 0x84]
movzx eax, byte [eax + edi]
push eax
call fcn.00416710
mov edx, dword [esp + 0x58]
add esp, 4
cmp al, 0x40
je 0x421170
mov bl, al
shl bh, 4
shr al, 2
and al, 0xf
or al, bh
mov esi, dword [esp + 0x9c]
lea ecx, [esi + 2]
mov dword [esp + 8], ecx
mov ecx, dword [esp + 0x50]
mov byte [ecx + esi + 1], al
lea eax, [edi + 1]
cmp eax, edx
jae 0x421170
mov eax, dword [esp + 0x84]
movzx eax, byte [eax + edi + 1]
push eax
call fcn.00416710
mov edx, dword [esp + 0x58]
add esp, 4
cmp al, 0x40
je 0x421170
shl bl, 6
add al, bl
mov ecx, dword [esp + 0x50]
mov esi, dword [esp + 0x9c]
mov byte [ecx + esi + 2], al
add esi, 3
mov dword [esp + 8], esi
jmp 0x421170
mov eax, dword [esp + 0xa4]
add eax, 0xfffffffb
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x50]
add eax, 5
mov dword [esp + 0x10], eax
mov dword [esp], 0
mov dword [esp + 4], 0
push 0x6c625980
push dword [0x443d60]
call fcn.00437590
add esp, 8
mov ecx, esp
lea edx, [esp + 0xc]
push ecx
push 0
push 0
push 0
push 0
push 0
push edx
call eax
xor ecx, ecx
test eax, eax
setne cl
jmp dword [ecx*4 + 0x44000c]
cmp dword [esp + 0xa0], 0xfffffff8
mov edi, dword [esp + 0x94]
mov esi, dword [esp + 0x7c]
jge 0x4212d7
mov eax, 0xffffffff
jmp 0x4212da
lea eax, [ebp + 0x10]
push eax
call fcn.00409690
add esp, 4
mov ebx, eax
mov dword [esp + 0x14], 0x59fe5b35
mov dword [esp + 0x18], 0x5d2c5fe8
mov dword [esp + 0x1c], 0x51da53e8
mov dword [esp + 0x20], 0x555657e4
mov word [esp + 0x24], 0
mov dword [esp + 0x48], 0
mov eax, dword [esp + 0x48]
cmp eax, 0x11
ja 0x421359
nop
nop
nop
mov eax, dword [esp + 0x48]
mov ecx, dword [esp + 0x48]
movzx ecx, byte [esp + ecx + 0x14]
add eax, 0xf862776f
xor eax, ecx
mov dword [esp + 0xb4], eax
mov eax, dword [esp + 0xb4]
add al, 0xd5
mov ecx, dword [esp + 0x48]
mov byte [esp + ecx + 0x14], al
inc dword [esp + 0x48]
mov eax, dword [esp + 0x48]
cmp eax, 0x12
jb 0x421320
movzx ecx, word [esi]
mov eax, ebx
test cx, cx
je 0x421381
lea edx, [esi + 2]
mov eax, ebx
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 0x421370
mov word [eax], 0
movzx ecx, word [esp + 0x14]
test cx, cx
je 0x4213b1
lea edx, [esp + 0x16]
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 0x4213a0
mov word [eax], 0
mov ecx, dword [esp + 0xf8]
push dword [esp]
push dword [esp + 8]
push ebx
call fcn.00409e00
mov dword [esp + 8], eax
jmp dword [0x440014]
push 0xe050b307
push dword [0x443d48]
call fcn.00437590
add esp, 8
push dword [esp + 4]
call eax
mov ebx, dword [esp + 8]
jmp dword [0x44002c]
push dword [esp + 0x50]
call fcn.004096a0
add esp, 4
push dword [esp + 0xa8]
call fcn.004034e0
add esp, 4
jmp dword [0x440034]
jmp dword [0x44003c]
push edi
call fcn.004096a0
add esp, 4
nop
nop
nop
nop
nop
nop
nop
nop
nop
push edi
call fcn.004096a0
add esp, 4
jmp dword [0x440044]
mov eax, dword [esp + 0x8c]
mov dword [esp + 8], eax
mov dword [esp + 0x14], 0x14151617
mov word [esp + 0x18], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 5
ja 0x42149e
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp]
mov ecx, dword [esp]
movzx ecx, byte [esp + ecx + 0x14]
add eax, 0xc84c9b04
xor eax, ecx
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0xc]
add al, 0xec
mov ecx, dword [esp]
mov byte [esp + ecx + 0x14], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 6
jb 0x421470
mov ecx, dword [0x443d54]
test ecx, ecx
je 0x4214dc
mov edx, dword [esp + 0x14]
xor edi, edi
mov eax, dword [0x443d58]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp dword [eax + edi*8], 0x625b6034
je 0x4214d0
inc edi
cmp ecx, edi
jne 0x4214c0
jmp 0x4214dc
mov eax, dword [eax + edi*8 + 4]
cmp eax, edx
jne 0x421827
jmp dword [0x44004c]
movzx eax, bl
jmp dword [eax*4 + 0x440054]
mov eax, dword [esp + 0x90]
mov ebx, dword [esp + 0xa0]
lea ecx, [ebx + eax]
add ecx, 0x17
test ecx, ecx
jns 0x42150b
mov eax, 0xffffffff
jmp 0x421514
add eax, ebx
lea eax, [eax*2 + 0x2e]
push eax
call fcn.00409690
add esp, 4
mov edx, eax
mov eax, dword [esp + 0x4c]
movzx ecx, word [eax]
mov dword [esp + 8], edx
mov eax, edx
test cx, cx
je 0x421551
mov edx, dword [esp + 0x98]
mov eax, dword [esp + 8]
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x421540
mov word [eax], 0x5c
mov dword [esp + 0x14], 0xb1c28ff0
mov dword [esp + 0x18], 0xb5d7b321
mov dword [esp + 0x1c], 0xb9dab7d7
mov dword [esp + 0x20], 0xbdcfbb98
mov dword [esp + 0x24], 0xa12fbf28
mov dword [esp + 0x28], 0xa5c1a332
mov dword [esp + 0x2c], 0xa9c1a7cd
mov dword [esp + 0x30], 0xadc6abd4
mov dword [esp + 0x34], 0xd138afcb
mov dword [esp + 0x38], 0xd5bed3b7
mov dword [esp + 0x3c], 0xd9b4d7b0
mov word [esp + 0x40], 0xdbd8
mov dword [esp + 0x42], 0
mov dword [esp], 0
mov ecx, dword [esp]
cmp ecx, 0x31
ja 0x42160b
nop
nop
nop
nop
mov ecx, dword [esp]
mov edx, dword [esp]
movzx edx, byte [esp + edx + 0x14]
mov edi, ecx
and edi, 0xf0800a9d
xor ecx, 0x70800a9d
lea ecx, [ecx + edi*2]
xor ecx, edx
mov dword [esp + 0xc], ecx
mov ecx, dword [esp + 0xc]
add cl, 0xef
mov edx, dword [esp]
mov byte [esp + edx + 0x14], cl
inc dword [esp]
mov ecx, dword [esp]
cmp ecx, 0x32
jb 0x4215d0
add eax, 2
movzx ecx, word [esi]
test cx, cx
je 0x421631
lea edx, [esi + 2]
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 0x421620
mov word [eax], 0
movzx ecx, word [esp + 0x14]
test cx, cx
je 0x421661
lea edx, [esp + 0x16]
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 0x421650
mov word [eax], 0
cmp ebx, 0xfffffff7
jge 0x421672
mov ebp, 0xffffffff
jmp 0x421675
add ebp, 0x12
push ebp
call fcn.00409690
add esp, 4
mov edi, eax
mov dword [esp + 0x14], 0x996e9bad
mov dword [esp + 0x18], 0xa55ca773
mov dword [esp + 0x1c], 0xa156a34f
mov dword [esp + 0x20], 0xad40af4c
mov word [esp + 0x24], 0xabac
lea eax, [esp + 0x14]
mov byte [eax + 0x16], 0
mov dword [eax + 0x12], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0x16
ja 0x4216fe
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp]
mov ecx, dword [esp]
movzx ecx, byte [esp + ecx + 0x14]
add eax, 0x56226d5b
xor eax, ecx
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0xc]
add al, 0x39
mov ecx, dword [esp]
mov byte [esp + ecx + 0x14], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0x17
jb 0x4216d0
movzx ecx, word [esi]
mov eax, edi
test cx, cx
je 0x421721
add esi, 2
mov eax, edi
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [esi]
add esi, 2
test cx, cx
jne 0x421710
mov word [eax], 0
movzx ecx, word [esp + 0x14]
test cx, cx
je 0x421753
lea edx, [esp + 0x16]
mov esi, dword [esp + 8]
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 0x421740
jmp 0x421757
mov esi, dword [esp + 8]
mov word [eax], 0
mov dword [esp + 0x14], 0x939291aa
lea eax, [esp + 0x14]
mov byte [eax + 6], 0
mov word [eax + 4], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 6
ja 0x4217be
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 + 0x14]
add eax, 0x7887645c
xor eax, ecx
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0xc]
add al, 0x34
mov ecx, dword [esp]
mov byte [esp + ecx + 0x14], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 7
jb 0x421790
push 0
push 0
push 0
push 0xc00000
lea eax, [esp + 0x24]
push eax
push esi
push edi
push dword [esp + 0x114]
call fcn.00418ab0
add esp, 0x20
mov ebx, eax
jmp dword [0x44005c]
jmp dword [0x440064]
push edi
call fcn.004096a0
add esp, 4
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
push edi
call fcn.004096a0
add esp, 4
jmp dword [0x44006c]
mov eax, dword [esp + 0x80]
and al, 1
or al, bl
mov dword [esp + 0x80], eax
jmp dword [0x440074]
push dword [esp + 8]
push 1
push dword [0x443d5c]
push eax
call fcn.00435eb0
add esp, 0x10
jmp dword [0x44004c]
push esi
call fcn.004096a0
add esp, 4
push esi
call fcn.004096a0
add esp, 4
jmp dword [0x440084]
mov eax, dword [case.0x41f751.165]
nop
jmp eax
mov ecx, dword [esp + 0xb0]
add ecx, 4
mov eax, dword [case.0x4201ab.58]
jmp case.0x4201ab.56
mov eax, dword [esp + 0x88]
mov byte [edi + eax], 0
push edi
call fcn.00402490
add esp, 4
mov eax, dword [esp + 0x88]
mov byte [edi + eax], 0
push edi
call fcn.00402490
add esp, 4
jmp dword [0x440000]
jmp dword [0x43ffd4]
push dword [esp + 0x4c]
call fcn.004096a0
add esp, 4
jmp dword [0x44009c]
jmp dword [0x44009c]
jmp dword [0x4400a8]
jmp dword [0x4400a8]
mov eax, dword [esp + 0x80]
and al, 1
add esp, 0xe4
pop esi
pop edi
pop ebx
pop ebp
ret
in eax, dx
inc ecx
add ah, dl
inc ecx
add byte [ecx], al
add byte [eax], al
add byte [ecx], al
add byte [eax], al
add byte [ecx], al
add byte [eax], al
add dl, ch
inc ecx
add byte [eax], dl
out dx, al
inc ecx
add byte [eax], bl
out dx, al
inc ecx
add byte [eax], dl
out dx, al
inc ecx
add byte [eax], dl
out dx, al
inc ecx
add ah, dl
inc ecx
add byte [eax], dl
out dx, al
inc ecx
add bl, bh
out dx, al
inc ecx
add byte [esi - 0x58ffbe0e], bh
inc ecx
add byte [ebp - 0x11], al
inc ecx
add byte [ecx - 0x32ffbe0e], bh
inc ecx
add byte [esi - 0x6fffbe11], al
out dx, eax
inc ecx
add byte [eax - 0x5fffbe11], ah
out dx, eax
inc ecx
add byte [edx - 0x5fffbe11], ah
out dx, eax
inc ecx
add byte [eax], dh
out dx, eax
inc ecx
add byte [ecx + 0x300041ef], ch
out dx, eax
inc ecx
add ch, bl
out dx, eax
inc ecx
add byte [eax], dh
out dx, eax
inc ecx
add byte [ecx], dl
invalid