Function at 0x40b517
Capabilities:
Encode data using base64
Parse credit card information
Parse pe header

Disassembly:
sub esp, 0x18c
and dword [esp], 0
cmp dword [0x454e30], 0
jle 0x40d496
push edi
push esi
push ebp
push ebx
push 2
pop esi
push 1
pop ebp
jmp 0x40b53e
push 2
pop esi
mov eax, dword [esp + 0x10]
push esi
movzx ebx, byte [eax + 0x454400]
push ebx
call fcn.0040efbf
mov edi, dword [0x446164]
pop ecx
test edi, edi
pop ecx
jne 0x40b804
cmp dword [0x454e34], edi
jne 0x40b616
cmp dword [0x454e3c], 0xfde9
je 0x40b616
mov eax, dword [0x445864]
test eax, eax
je 0x40b5a5
cmp ebx, 0x1b
je 0x40b5a5
cmp ebx, 0xa
je 0x40b5a5
cmp ebx, 0xd
je 0x40b5a5
cmp ebx, 8
je 0x40b5a5
cmp eax, esi
jne 0x40b5f6
xor ebx, 0x80
jmp 0x40b5f6
mov eax, dword [0x44617c]
mov eax, dword [eax*4 + 0x445828]
cmp eax, 0xd800
je 0x40b750
mov ecx, 0xd900
cmp eax, ecx
je 0x40b5fe
cmp eax, 0xda00
je 0x40b5ea
cmp eax, 0xdb00
jne 0x40b804
cmp ebx, 0x23
jne 0x40b750
mov ebx, 0xd97d
jmp 0x40b804
cmp ebx, 0x20
jl 0x40b804
movzx ebx, bl
or bh, 0xda
jmp 0x40b804
mov al, byte [ebx + 0x452f00]
cmp al, 0xff
jne 0x40b75a
movzx ebx, bl
or ebx, ecx
jmp 0x40b804
mov eax, dword [0x4457f8]
test eax, eax
je 0x40b748
jle 0x40b804
cmp eax, 5
jg 0x40b804
mov ecx, ebx
and cx, 0xc0
cmp cl, 0x80
je 0x40b653
dec dword [esp + 0x10]
and dword [0x4457f8], 0
mov ebx, 0xd961
jmp 0x40b804
mov ecx, dword [0x44588c]
and ebx, 0x3f
shl ecx, 6
or ebx, ecx
dec eax
mov dword [0x44588c], ebx
mov dword [0x4457f8], eax
jne 0x40d47e
cmp ebx, 0x80
jl 0x40b6b4
mov eax, dword [0x446148]
cmp ebx, 0x800
jge 0x40b68d
cmp eax, 2
jge 0x40b6b4
cmp ebx, 0x10000
jge 0x40b69a
cmp eax, 3
jge 0x40b6b4
cmp ebx, 0x200000
jge 0x40b6a7
cmp eax, 4
jge 0x40b6b4
cmp ebx, 0x4000000
jge 0x40b6b9
cmp eax, 5
jl 0x40b6b9
mov ebx, 0xd961
cmp ebx, 0x2028
je 0x40b6c9
cmp ebx, 0x2029
jne 0x40b6ce
mov ebx, 0x85
cmp ebx, 0xa0
jge 0x40b6db
mov ebx, 0xfffd
cmp ebx, 0xd800
jl 0x40b6f0
cmp ebx, 0xe000
jge 0x40b6f0
mov ebx, 0xd961
cmp ebx, 0x10ffff
jle 0x40b6fd
mov ebx, 0xd961
cmp ebx, 0xe0000
jl 0x40b711
cmp ebx, 0xe007f
jle 0x40d47e
cmp ebx, 0xfeff
je 0x40d47e
cmp ebx, 0xfffe
je 0x40b72d
cmp ebx, 0xffff
jne 0x40b732
mov ebx, 0xd961
cmp ebx, 0x10000
jl 0x40b804
mov ebx, 0xfffd
jmp 0x40b804
cmp ebx, 0x80
jge 0x40b76d
mov al, byte [ebx + 0x452f00]
cmp al, 0xff
je 0x40b762
movzx ebx, al
jmp 0x40b804
movzx ebx, bl
or bh, 0xd8
jmp 0x40b804
mov eax, ebx
and ax, 0xe0
cmp al, 0xc0
jne 0x40b788
mov dword [0x4457f8], ebp
mov dword [0x446148], ebp
and ebx, 0x1f
jmp 0x40b7f4
mov eax, ebx
and ax, 0xf0
cmp al, 0xe0
jne 0x40b7a3
mov dword [0x4457f8], esi
mov dword [0x446148], esi
and ebx, 0xf
jmp 0x40b7f4
mov eax, ebx
and ax, 0xf8
cmp al, 0xf0
jne 0x40b7bf
push 3
and ebx, 7
pop eax
mov dword [0x4457f8], eax
mov dword [0x446148], eax
jmp 0x40b7f4
mov eax, ebx
and ax, 0xfc
cmp al, 0xf8
jne 0x40b7db
push 4
and ebx, 3
pop eax
mov dword [0x4457f8], eax
mov dword [0x446148], eax
jmp 0x40b7f4
mov eax, ebx
and ax, 0xfe
cmp al, 0xfc
jne 0x40b7ff
push 5
and ebx, ebp
pop eax
mov dword [0x4457f8], eax
mov dword [0x446148], eax
mov dword [0x44588c], ebx
jmp 0x40d47e
mov ebx, 0xd961
mov edx, dword [0x454c04]
mov ecx, dword [0x43cd30]
mov eax, ebx
and al, 0xe0
cmp eax, 0x80
jne 0x40b841
cmp edi, 5
jge 0x40b841
test edx, edx
jne 0x40b841
test cl, 0x10
je 0x40b841
mov edi, ebp
xor esi, esi
and ebx, 0x1f
mov dword [0x446164], edi
mov dword [0x446180], esi
add ebx, 0x40
jmp 0x40b847
mov esi, dword [0x446180]
cmp ebx, 0x7f
jne 0x40b8a7
cmp edi, 5
jge 0x40b8a7
test ch, 0x40
je 0x40b8a7
cmp dword [0x4461a4], 0
je 0x40b86e
cmp dword [0x445868], 0
jne 0x40b86e
dec dword [0x4461a4]
and dword [0x445868], 0
push 0x446
push dword [0x4461a0]
call fcn.0040abda
pop ecx
pop ecx
mov ecx, dword [0x4461a4]
lea eax, [eax + ecx*4]
mov ecx, dword [0x4458a4]
or cx, 0xd820
mov dword [0x446174], eax
mov dword [eax], ecx
jmp case.0x40c4bd.73
test ebx, 0xffffffe0
jne 0x40bd27
cmp edi, 5
jge 0x40bd27
cmp ebx, 0xb
jg 0x40bbb8
je 0x40bc9c
mov eax, ebx
sub eax, 5
je 0x40bb2b
dec eax
dec eax
je 0x40ba04
dec eax
je 0x40b992
dec eax
je 0x40b8f4
dec eax
je 0x40bca5
jmp case.0x40c4bd.73
mov eax, dword [0x4461a0]
mov edi, dword [0x4461a4]
push 0x4ec
push eax
mov ebx, eax
call fcn.0040abda
mov esi, dword [0x4461a4]
pop ecx
pop ecx
mov ecx, dword [0x455280]
lea edx, [ecx - 1]
inc esi
cmp esi, edx
mov dword [0x4461a4], esi
jge 0x40b938
mov ebp, dword [0x446144]
push 1
cmp byte [ebp + esi], 0
pop ebp
je 0x40b91d
test byte [eax + ecx*4 + 3], 3
je 0x40b952
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
cmp esi, eax
jl 0x40b95c
dec eax
mov dword [0x4461a4], eax
jmp 0x40b95c
cmp esi, ecx
jl 0x40b95c
mov dword [0x4461a4], edx
push 0x4fa
push dword [0x4461a0]
call fcn.0040abda
pop ecx
pop ecx
mov ecx, dword [0x4461a4]
push ecx
push dword [0x4461a0]
lea eax, [eax + ecx*4]
mov dword [0x446174], eax
push edi
push ebx
call fcn.0040b4e0
add esp, 0x10
jmp 0x40cbbf
mov eax, dword [0x4461a0]
xor ecx, ecx
cmp dword [0x4461a4], ecx
jne 0x40b9ad
cmp eax, ecx
je 0x40b9e4
cmp dword [0x44581c], ecx
je 0x40b9e4
cmp dword [0x4461a4], ecx
jne 0x40b9ce
cmp eax, ecx
jle 0x40b9ce
mov ecx, dword [0x455280]
dec ecx
dec eax
mov dword [0x4461a4], ecx
mov dword [0x4461a0], eax
jmp 0x40b9e4
cmp dword [0x445868], ecx
je 0x40b9de
mov dword [0x445868], ecx
jmp 0x40b9e4
dec dword [0x4461a4]
push 0x4b5
push eax
call fcn.0040abda
pop ecx
pop ecx
mov ecx, dword [0x4461a4]
lea eax, [eax + ecx*4]
mov dword [0x446174], eax
jmp 0x40cbbf
call dword [sym.imp.KERNEL32.dll_GetTickCount]
xor edi, edi
mov esi, eax
cmp dword [0x452ed4], edi
jne 0x40ba50
push 8
call fcn.004121ab
mov dword [eax + 4], esi
mov dword [eax], edi
cmp dword [0x44584c], edi
pop ecx
jne 0x40ba35
mov ecx, eax
mov dword [0x44584c], ecx
jmp 0x40ba43
mov ecx, dword [0x4461b0]
mov dword [ecx], eax
mov ecx, dword [0x44584c]
inc dword [0x452ed0]
mov dword [0x4461b0], eax
jmp 0x40ba56
mov ecx, dword [0x44584c]
cmp ecx, edi
je 0x40ba92
mov eax, esi
sub eax, dword [0x453b58]
cmp dword [ecx + 4], eax
jge 0x40ba92
mov eax, ecx
mov ecx, dword [ecx]
push eax
mov dword [0x44584c], ecx
call fcn.00412224
pop ecx
mov ecx, dword [0x44584c]
test ecx, ecx
jne 0x40ba88
and dword [0x4461b0], ecx
dec dword [0x452ed0]
test ecx, ecx
jne 0x40ba5a
mov eax, dword [0x453b50]
xor edi, edi
cmp eax, edi
je 0x40bae1
cmp dword [0x452ed4], edi
je 0x40babd
mov ecx, esi
sub ecx, dword [0x452ed8]
cmp ecx, dword [0x453b5c]
jl 0x40babd
mov dword [0x452ed4], edi
jmp 0x40bae1
cmp eax, edi
je 0x40bae1
cmp dword [0x452ed4], edi
jne 0x40bae1
mov ecx, dword [0x452ed0]
cmp ecx, dword [0x453b54]
jl 0x40bae1
mov dword [0x452ed4], 1
cmp eax, edi
mov dword [0x452ed8], esi
je 0x40baf3
cmp dword [0x452ed4], edi
jne 0x40bb20
push dword [0x453b48]
call fcn.004053c5
cmp dword [0x453b48], 2
pop ecx
jne 0x40bb20
add esi, 0x64
mov dword [0x4541e0], 1
mov dword [0x4541e4], esi
call fcn.0040ac59
mov dword [0x445850], edi
jmp 0x40cefe
test cl, 1
je 0x40d07f
xor esi, esi
cmp byte [0x453de0], 0
mov edx, 0x453de0
lea eax, [esp + 0x9c]
je 0x40bb9a
mov cl, byte [edx]
test esi, esi
je 0x40bb88
cmp cl, 0x61
jl 0x40bb60
cmp cl, 0x7a
jg 0x40bb60
sub cl, 0x60
jmp 0x40bb81
cmp cl, 0x40
jl 0x40bb6a
cmp cl, 0x5f
jle 0x40bb7e
cmp cl, 0x3f
je 0x40bb7e
test cl, 0x80
jne 0x40bb7e
cmp cl, 0x7e
jne 0x40bb84
mov byte [eax], 0x5e
jmp 0x40bb83
xor cl, 0x40
mov byte [eax], cl
inc eax
xor esi, esi
jmp 0x40bb94
cmp cl, 0x5e
jne 0x40bb91
mov esi, ebp
jmp 0x40bb94
mov byte [eax], cl
inc eax
inc edx
cmp byte [edx], 0
jne 0x40bb4b
lea ecx, [esp + 0x9c]
sub eax, ecx
push eax
lea eax, [esp + 0xa0]
push eax
push 0
call fcn.0040fa60
jmp 0x40d3b7
mov eax, ebx
sub eax, 0xc
je 0x40bc6e
dec eax
je 0x40bc2c
dec eax
je 0x40bc18
dec eax
je 0x40bc03
sub eax, 0xc
jne case.0x40c4bd.73
test edx, edx
je 0x40bbe8
mov dword [0x446164], 9
jmp case.0x40c4bd.73
test cl, 1
je 0x40d07f
and dword [0x446180], 0
mov dword [0x446164], ebp
jmp case.0x40c4bd.73
test cl, 2
je 0x40d07f
and dword [0x44617c], 0
jmp case.0x40c4bd.73
test cl, 2
je 0x40d07f
mov dword [0x44617c], ebp
jmp case.0x40c4bd.73
push 0x4cc
xor esi, esi
push dword [0x4461a0]
mov dword [0x4461a4], esi
mov dword [0x445868], esi
call fcn.0040abda
pop ecx
mov dword [0x455060], ebp
pop ecx
mov dword [0x445830], esi
mov ecx, dword [0x4461a4]
push ebp
push 0xd
lea eax, [eax + ecx*4]
mov dword [0x446174], eax
jmp 0x40bd1d
test ch, 0x10
je 0x40bc9c
xor esi, esi
push esi
push esi
push esi
call fcn.0040d865
add esp, 0xc
push ebp
push esi
push esi
call fcn.0040b403
add esp, 0xc
mov dword [0x445850], esi
mov dword [0x445868], esi
jmp 0x40cbbf
test cl, 2
je 0x40d07f
mov eax, dword [0x446188]
cmp dword [0x4461a0], eax
jne 0x40bcc5
push ebp
push ebp
push eax
push dword [0x446198]
call fcn.0040d669
add esp, 0x10
jmp 0x40bcd9
mov eax, dword [0x455288]
dec eax
cmp dword [0x4461a0], eax
jge 0x40bcd9
inc dword [0x4461a0]
xor esi, esi
cmp dword [0x453b3c], esi
je 0x40bce9
mov dword [0x4461a4], esi
push 0x4e3
push dword [0x4461a0]
call fcn.0040abda
pop ecx
mov dword [0x445868], esi
pop ecx
mov dword [0x455060], ebp
mov ecx, dword [0x4461a4]
push ebp
mov dword [0x445830], esi
push ebx
lea eax, [eax + ecx*4]
mov dword [0x446174], eax
call fcn.0040efbf
jmp 0x40d1d3
cmp edi, 0xd
ja case.0x40c4bd.73
jmp dword [edi*4 + 0x40d4a4]
cmp dword [0x445868], 0
je 0x40bdb4
cmp dword [0x44581c], 0
je 0x40bdb4
mov eax, dword [0x446174]
or byte [eax + 7], 0x10
mov eax, dword [0x446188]
cmp dword [0x4461a0], eax
jne 0x40bd72
push ebp
push ebp
push eax
push dword [0x446198]
call fcn.0040d669
add esp, 0x10
jmp 0x40bd86
mov eax, dword [0x455288]
dec eax
cmp dword [0x4461a0], eax
jge 0x40bd86
inc dword [0x4461a0]
and dword [0x4461a4], 0
push 0x50b
push dword [0x4461a0]
call fcn.0040abda
pop ecx
and dword [0x445868], 0
pop ecx
mov ecx, dword [0x4461a4]
lea eax, [eax + ecx*4]
mov dword [0x446174], eax
cmp dword [0x445854], 0
je 0x40bdc4
push ebp
call fcn.0040da06
pop ecx
cmp dword [0x44615c], 0
je 0x40bdfa
mov esi, dword [0x4461a4]
mov eax, dword [0x4461a0]
cmp esi, dword [0x455280]
mov edx, eax
mov dword [esp + 0x18], esi
jne 0x40bdeb
xor ecx, ecx
inc edx
jmp 0x40bdee
lea ecx, [esi + 1]
push ecx
push edx
push esi
push eax
call fcn.0040b4e0
add esp, 0x10
mov eax, ebx
mov esi, 0xd800
and eax, 0xff00
cmp eax, esi
je 0x40be0e
test eax, eax
jne 0x40be17
push ebp
push ebx
call fcn.0040efbf
pop ecx
pop ecx
mov ecx, ebx
xor edi, edi
and ecx, 0xfc00
xor eax, eax
cmp ecx, esi
jne 0x40be29
mov eax, ebp
cmp eax, edi
jne 0x40be34
push ebx
call fcn.0040f4d2
pop ecx
dec eax
je 0x40be86
dec eax
jne 0x40d47e
mov eax, dword [0x4461a4]
inc eax
cmp eax, dword [0x455280]
je 0x40be86
or ebx, dword [0x4458a4]
mov eax, dword [0x446174]
or ebx, 0x10000000
mov dword [eax], ebx
add dword [0x446174], 4
mov eax, dword [0x4458a4]
mov ecx, dword [0x446174]
or ax, 0x303f
mov dword [ecx], eax
add dword [0x446174], 4
inc dword [0x4461a4]
jmp 0x40be9a
or ebx, dword [0x4458a4]
mov eax, dword [0x446174]
mov dword [eax], ebx
add dword [0x446174], 4
inc dword [0x4461a4]
mov eax, dword [0x4461a4]
cmp eax, dword [0x455280]
jne 0x40cbbf
sub dword [0x446174], 4
dec dword [0x4461a4]
cmp dword [0x44581c], edi
mov dword [0x445868], ebp
je 0x40cbbf
cmp dword [0x454c04], edi
je 0x40cbbf
mov eax, dword [0x446174]
or byte [eax + 7], 0x10
mov eax, dword [0x446188]
cmp dword [0x4461a0], eax
jne 0x40bf05
push ebp
push ebp
push eax
push dword [0x446198]
call fcn.0040d669
add esp, 0x10
jmp 0x40bf19
mov eax, dword [0x455288]
dec eax
cmp dword [0x4461a0], eax
jge 0x40bf19
inc dword [0x4461a0]
push 0x539
mov dword [0x4461a4], edi
push dword [0x4461a0]
call fcn.0040abda
pop ecx
mov dword [0x445868], edi
pop ecx
mov ecx, dword [0x4461a4]
lea eax, [eax + ecx*4]
mov dword [0x446174], eax
jmp 0x40cbbf
cmp ebx, 0x5c
je 0x40cfce
cmp ebx, 0x20
jl 0x40bf78
cmp ebx, 0x2f
jg 0x40bf78
test esi, esi
je 0x40bf6d
or dword [0x446180], 0xffffffff
jmp case.0x40c4bd.73
mov dword [0x446180], ebx
jmp case.0x40c4bd.73
shl esi, 8
add ebx, esi
xor eax, eax
cmp ebx, 0x3d
mov dword [0x446164], eax
jg 0x40bfce
je 0x40bfc0
sub ebx, 0x37
je 0x40bfac
dec ebx
jne case.0x40c4bd.73
test cl, 2
je 0x40d07f
push eax
call fcn.0040d906
pop ecx
jmp 0x40cbbf
test cl, 2
je 0x40c3c6
push ebp
call fcn.0040d906
jmp 0x40d1d4
test cl, 2
jne case.0x40d0e1.61
jmp 0x40c3c6
cmp ebx, 0x44
jg 0x40c033
je 0x40bfec
cmp ebx, 0x3e
jne case.0x40c4bd.73
test cl, 2
jne case.0x40d0e1.62
jmp 0x40d07f
test cl, 2
je 0x40c3c6
mov eax, dword [0x446188]
cmp dword [0x4461a0], eax
jne 0x40c015
push ebp
push ebp
push eax
push dword [0x446198]
call fcn.0040d669
add esp, 0x10
jmp 0x40c029
mov eax, dword [0x455288]
dec eax
cmp dword [0x4461a0], eax
jge 0x40c029
inc dword [0x4461a0]
push 0x579
jmp 0x40c0f9
cmp ebx, 0x48
jg 0x40c0ab
je 0x40c08e
cmp ebx, 0x45
jne case.0x40c4bd.73
test cl, 2
je 0x40d07f
mov eax, dword [0x446188]
and dword [0x4461a4], 0
cmp dword [0x4461a0], eax
jne 0x40c073
push ebp
push ebp
push eax
push dword [0x446198]
call fcn.0040d669
add esp, 0x10
jmp 0x40c087
mov eax, dword [0x455288]
dec eax
cmp dword [0x4461a0], eax
jge 0x40c087
inc dword [0x4461a0]
push 0x584
jmp 0x40c0f9
test cl, 2
je 0x40c3c6
mov eax, dword [0x4461a4]
mov ecx, dword [0x446144]
mov byte [ecx + eax], 1
jmp case.0x40c4bd.73
cmp ebx, 0x5a
jg 0x40c112
je 0x40c104
cmp ebx, 0x4d
jne case.0x40c4bd.73
test cl, 2
je 0x40d07f
mov eax, dword [0x446198]
cmp dword [0x4461a0], eax
jne 0x40c0e5
push ebp
push 0xffffffffffffffff
push dword [0x446188]
push eax
call fcn.0040d669
add esp, 0x10
jmp 0x40c0f4
cmp dword [0x4461a0], 0
jle 0x40c0f4
dec dword [0x4461a0]
push 0x58e
push dword [0x4461a0]
jmp 0x40cb42
test cl, 2
je 0x40c3c6
jmp 0x40c741
cmp ebx, 0x63
jg 0x40c1c2
je 0x40c168
sub ebx, 0x5b
je 0x40c149
dec ebx
dec ebx
jne case.0x40c4bd.73
test ch, 0x40
je 0x40d07f
and dword [0x4460c0], 0
mov dword [0x446164], 3
jmp case.0x40c4bd.73
mov dword [0x446164], 2
mov dword [0x445824], ebp
mov dword [0x4460c0], eax
mov dword [0x446180], eax
jmp case.0x40c4bd.73
test cl, 2
je 0x40c3c6
call fcn.0040ad0a
xor esi, esi
cmp dword [0x446178], esi
je 0x40c197
push ebp
push dword [0x455288]
push 0x50
call fcn.00402337
add esp, 0xc
mov dword [0x446178], esi
push 0x59d
push dword [0x4461a0]
call fcn.0040abda
pop ecx
mov dword [0x445850], esi
pop ecx
mov ecx, dword [0x4461a4]
lea eax, [eax + ecx*4]
mov dword [0x446174], eax
jmp 0x40cbbf
mov edx, 0x2338
cmp ebx, edx
jg 0x40c2b7
je 0x40c248
cmp ebx, 0x2333
jl case.0x40c4bd.73
cmp ebx, 0x2336
jg case.0x40c4bd.73
test cl, 2
je 0x40d07f
sub ebx, 0x2333
je 0x40c212
dec ebx
je 0x40c20b
dec ebx
je 0x40c207
mov esi, 0x1000000
jmp 0x40c217
xor esi, esi
jmp 0x40c217
mov esi, 0x3000000
jmp 0x40c217
mov esi, 0x2000000
push 0x5d2
push dword [0x4461a0]
call fcn.0040abda
pop ecx
pop ecx
mov ecx, dword [0x455280]
and byte [eax + ecx*4 + 3], 0xfc
lea ecx, [eax + ecx*4]
mov ecx, dword [0x455280]
or dword [eax + ecx*4], esi
lea eax, [eax + ecx*4]
jmp case.0x40c4bd.73
test cl, 2
je 0x40c3c6
xor esi, esi
cmp dword [0x455288], eax
jle 0x40c297
push 0x5ae
push esi
call fcn.0040abda
pop ecx
xor edi, edi
pop ecx
mov ecx, dword [0x455280]
test ecx, ecx
jle 0x40c28a
mov edx, eax
mov dword [edx], 0x980045
mov ecx, dword [0x455280]
inc edi
add edx, 4
cmp edi, ecx
jl 0x40c276
and dword [eax + ecx*4], 0
inc esi
cmp esi, dword [0x455288]
jl 0x40c25b
xor edx, edx
xor eax, eax
push edx
xor ecx, ecx
push dword [0x455288]
mov dword [0x445850], edx
mov dword [0x455060], ebp
push ecx
push eax
jmp 0x40cc70
mov edx, 0x2540
cmp ebx, edx
jg 0x40c2e2
je 0x40c2cf
cmp ebx, 0x2538
je 0x40c2fb
jmp case.0x40c4bd.73
test ch, 0x40
je 0x40c3c6
mov dword [0x454e34], eax
jmp case.0x40c4bd.73
mov edx, 0x2830
cmp ebx, edx
jg 0x40c31d
je 0x40c30f
cmp ebx, 0x2547
jne case.0x40c4bd.73
xor eax, eax
test ch, 0x40
je 0x40c3c6
mov dword [0x454e34], ebp
jmp case.0x40c4bd.73
test cl, 2
jne 0x40d129
jmp 0x40c3c6
sub ebx, 0x2841
je 0x40c3c1
dec ebx
je 0x40c3b6
sub ebx, 0x13
je 0x40c3a2
sub ebx, 0xdb
je 0x40c38e
sub ebx, 0x11
je 0x40c37a
dec ebx
je 0x40c366
sub ebx, 0x13
jne case.0x40c4bd.73
test ch, 0x40
je 0x40d07f
mov dword [0x44582c], 0xda00
jmp case.0x40c4bd.73
test cl, 2
je 0x40c3c6
mov dword [0x44582c], 0xd800
jmp case.0x40c4bd.73
test cl, 2
je 0x40c3c6
mov dword [0x44582c], 0xdb00
jmp case.0x40c4bd.73
test cl, 2
je 0x40c3c6
mov dword [0x44582c], 0xd900
jmp case.0x40c4bd.73
test ch, 0x40
je 0x40c3c6
mov dword [0x445828], 0xda00
jmp case.0x40c4bd.73
test cl, 2
jne 0x40d13f
jmp 0x40c3c6
test cl, 2
jne 0x40c3d0
mov dword [0x446164], eax
jmp case.0x40c4bd.73
mov dword [0x445828], 0xdb00
jmp case.0x40c4bd.73
and dword [0x446164], 0
cmp dword [0x441dbc], ebp
jle 0x40c406
push 4
push ebx
call fcn.00429090
mov esi, dword [0x446180]
pop ecx
pop ecx
mov ecx, dword [0x43cd30]
jmp 0x40c411
mov eax, dword [str.________________________________H]
mov al, byte [eax + ebx*2]
and eax, 4
xor edi, edi
cmp eax, edi
je 0x40c440
mov eax, dword [0x445824]
cmp eax, 0x20
jg 0x40c481
cmp dword [eax*4 + 0x4460bc], edi
lea eax, [eax*4 + 0x4460bc]
jne 0x40c433
mov dword [eax], edi
mov ecx, dword [eax]
lea ecx, [ecx + ecx*4]
lea ecx, [ebx + ecx*2 - 0x30]
mov dword [eax], ecx
jmp 0x40c481
cmp ebx, 0x3b
jne 0x40c45e
mov eax, dword [0x445824]
inc eax
cmp eax, 0x20
mov dword [0x445824], eax
jg 0x40c481
mov dword [eax*4 + 0x4460bc], edi
jmp 0x40c481
cmp ebx, 0x40
jge 0x40c490
cmp esi, edi
je 0x40c470
or dword [0x446180], 0xffffffff
jmp 0x40c481
cmp ebx, 0x3f
mov dword [0x446180], ebp
je 0x40c481
mov dword [0x446180], ebx
mov dword [0x446164], 2
jmp case.0x40c4bd.73
mov eax, esi
shl eax, 8
add ebx, eax
mov eax, 0x168
cmp ebx, eax
jg 0x40ccbe
je 0x40cc7c
lea eax, [ebx - 0x40]
cmp eax, 0x38
ja case.0x40c4bd.73
movzx eax, byte [eax + 0x40d568]
jmp dword [eax*4 + 0x40d4dc]
mov eax, dword [0x4460c0]
test eax, eax
jne 0x40c4cf
mov eax, ebp
mov ecx, dword [0x4461a0]
push ebp
sub ecx, eax
jmp 0x40c4f7
test ch, 0x20
je 0x40d07f
mov eax, dword [0x4460c0]
test eax, eax
jne 0x40c4ee
mov eax, ebp
mov ecx, dword [0x4461a0]
push ebp
add ecx, eax
push ecx
jmp 0x40c5de
test ch, 0x20
je 0x40d07f
mov eax, dword [0x4460c0]
test eax, eax
jne 0x40c511
mov eax, ebp
mov ecx, dword [0x4461a4]
push ebp
push dword [0x4461a0]
add ecx, eax
jmp 0x40c62d
mov eax, dword [0x4460c0]
test eax, eax
jne 0x40c530
mov eax, ebp
mov ecx, dword [0x4461a4]
push ebp
push dword [0x4461a0]
sub ecx, eax
jmp 0x40c62d
test ch, 0x20
je 0x40d07f
mov eax, dword [0x4460c0]
test eax, eax
jne 0x40c558
mov eax, ebp
mov ecx, dword [0x4461a0]
push ebp
add ecx, eax
jmp 0x40c580
test ch, 0x20
je 0x40d07f
mov eax, dword [0x4460c0]
test eax, eax
jne 0x40c577
mov eax, ebp
mov ecx, dword [0x4461a0]
push ebp
sub ecx, eax
push ecx
push 0
jmp 0x40c62e
test ch, 0x20
je 0x40d07f
mov eax, dword [0x4460c0]
test eax, eax
jne 0x40c59c
mov eax, ebp
push 0
dec eax
push dword [0x4461a0]
push eax
jmp 0x40c62e
test ch, 0x20
je 0x40d07f
mov ecx, dword [0x4460c0]
test ecx, ecx
jne 0x40c5c0
mov ecx, ebp
mov eax, dword [0x445880]
mov edx, eax
neg edx
sbb edx, edx
and edx, 2
neg eax
sbb eax, eax
push edx
and eax, dword [0x446198]
lea eax, [eax + ecx - 1]
push eax
push dword [0x4461a4]
jmp 0x40c62e
cmp dword [0x445824], 2
jge 0x40c5f6
and dword [0x4460c4], 0
mov edx, dword [0x4460c0]
test edx, edx
jne 0x40c602
mov edx, ebp
mov ecx, dword [0x4460c4]
test ecx, ecx
jne 0x40c60e
mov ecx, ebp
mov eax, dword [0x445880]
mov esi, eax
neg esi
sbb esi, esi
and esi, 2
neg eax
sbb eax, eax
push esi
and eax, dword [0x446198]
dec ecx
lea eax, [eax + edx - 1]
push eax
push ecx
call fcn.0040d865
jmp 0x40c67f
mov eax, dword [0x4460c0]
inc eax
cmp eax, 3
jbe 0x40c642
xor eax, eax
mov ecx, eax
shr eax, 1
and ecx, ebp
and eax, ebp
push ecx
push eax
push 0
call fcn.0040b403
add esp, 0xc
and dword [0x445850], 0
jmp 0x40cbbf
mov eax, dword [0x4460c0]
inc eax
cmp eax, 3
jbe 0x40c66f
xor eax, eax
mov ecx, eax
shr eax, 1
and ecx, ebp
and eax, ebp
push ecx
push eax
push ebp
call fcn.0040b403
add esp, 0xc
jmp 0x40cbbf
test cl, 8
je 0x40d07f
mov edx, dword [0x4461a0]
mov ecx, dword [0x446188]
cmp edx, ecx
jg 0x40c6ba
mov eax, dword [0x4460c0]
test eax, eax
jne 0x40c6ab
mov eax, ebp
neg eax
push 0
push eax
push ecx
push edx
call fcn.0040d669
add esp, 0x10
push 0x673
jmp 0x40c6f6
test cl, 8
je 0x40d07f
mov edx, dword [0x4461a0]
mov eax, dword [0x446188]
cmp edx, eax
jg 0x40c6f1
mov ecx, dword [0x4460c0]
test ecx, ecx
jne 0x40c6e5
mov ecx, ebp
push ebp
push ecx
push eax
push edx
call fcn.0040d669
add esp, 0x10
push 0x67b
push dword [0x4461a0]
jmp 0x40c880
test cl, 8
je 0x40d07f
mov eax, dword [0x4460c0]
test eax, eax
jne 0x40c72d
mov eax, ebp
jmp 0x40c72d
test cl, 8
je 0x40d07f
mov eax, dword [0x4460c0]
test eax, eax
jne 0x40c72b
mov eax, ebp
neg eax
push eax
call fcn.0040da06
jmp 0x40ca9f
test cl, 2
je 0x40d07f
mov esi, str.e__6c
push esi
call fcn.00428d50
pop ecx
push eax
push esi
jmp 0x40d1ce
mov eax, dword [0x4460c0]
cmp eax, 6
jne 0x40c793
mov eax, dword [0x4461a4]
inc eax
push eax
mov eax, dword [0x4461a0]
inc eax
push eax
lea eax, [esp + 0x44]
push str.e__d__dR
push eax
call fcn.00428720
add esp, 0x10
lea eax, [esp + 0x3c]
push eax
call fcn.00428d50
pop ecx
push eax
lea eax, [esp + 0x40]
jmp 0x40cc01
cmp eax, 5
jne case.0x40c4bd.73
push 4
push str.e_0n
jmp 0x40d1ce
test cl, 2
je 0x40d07f
cmp dword [0x445824], ebp
jne case.0x40c4bd.73
mov eax, dword [0x4460c0]
test eax, eax
jne 0x40c7da
mov eax, dword [0x4461a4]
mov ecx, dword [0x446144]
and byte [ecx + eax], 0
jmp case.0x40c4bd.73
cmp eax, 3
jne case.0x40c4bd.73
xor eax, eax
cmp dword [0x455280], eax
jle case.0x40c4bd.73
mov ecx, dword [0x446144]
and byte [eax + ecx], 0
inc eax
cmp eax, dword [0x455280]
jl 0x40c7f1
jmp case.0x40c4bd.73
test cl, 2
je 0x40d07f
mov edx, dword [0x445824]
cmp edx, 2
jg case.0x40c4bd.73
mov eax, dword [0x4460c0]
test eax, eax
jne 0x40c82c
mov eax, ebp
cmp edx, ebp
mov edx, dword [0x455288]
lea ecx, [eax - 1]
jle 0x40c842
mov eax, dword [0x4460c4]
test eax, eax
jne 0x40c844
mov eax, edx
dec eax
cmp eax, edx
jl 0x40c84c
lea eax, [edx - 1]
mov edx, eax
sub edx, ecx
test edx, edx
jle case.0x40c4bd.73
and dword [0x4461a4], 0
mov dword [0x446188], eax
mov eax, dword [0x445880]
push 0x6d0
neg eax
sbb eax, eax
mov dword [0x446198], ecx
and eax, ecx
mov dword [0x4461a0], eax
push eax
call fcn.0040abda
pop ecx
pop ecx
mov ecx, dword [0x4461a4]
lea eax, [eax + ecx*4]
mov dword [0x446174], eax
jmp 0x40cbbf
mov eax, dword [0x445824]
xor ebx, ebx
cmp eax, ebx
jle 0x40ca88
mov edx, 0x4460c0
mov esi, eax
mov edi, 0x4010
mov eax, dword [edx]
cmp eax, 0x31
jg 0x40ca7e
je 0x40ca6a
cmp eax, 0x15
jg 0x40c9a5
je 0x40c987
cmp eax, 7
jg 0x40c938
je 0x40c92c
sub eax, ebx
je 0x40c91d
dec eax
je 0x40c908
sub eax, 3
je 0x40c990
dec eax
jne 0x40ca7e
test cl, 4
je 0x40ca1e
or byte [0x4458a7], 8
jmp 0x40ca7e
test cl, 4
je 0x40ca1e
or byte [0x4458a7], 1
jmp 0x40ca7e
mov dword [0x4458a4], 0x980000
jmp 0x40ca7e
or byte [0x4458a7], 4
jmp 0x40ca7e
sub eax, 0xa
je 0x40c973
dec eax
je 0x40c95f
dec eax
jne 0x40ca7e
test ch, 0x10
je 0x40ca1e
mov dword [0x445864], 2
jmp 0x40ca7e
test ch, 0x10
je 0x40ca1e
mov dword [0x445864], ebp
jmp 0x40ca7e
test ch, 0x10
je 0x40ca1e
mov dword [0x445864], ebx
jmp 0x40ca7e
test ch, 0x40
je 0x40ca1e
test cl, 4
je 0x40ca1e
or byte [0x4458a7], 2
jmp 0x40ca7e
cmp eax, 0x27
jg 0x40ca40
je 0x40ca2f
cmp eax, 0x16
je 0x40ca1a
cmp eax, 0x18
je 0x40ca0d
cmp eax, 0x19
je 0x40ca00
cmp eax, 0x1b
je 0x40c9f3
cmp eax, 0x1d
jle 0x40ca7e
cmp eax, 0x25
jg 0x40ca7e
mov ebx, dword [0x4458a4]
add eax, 0xffe2
shl eax, 0x10
and ebx, 0xfff0ffff
or eax, ebx
mov dword [0x4458a4], eax
jmp 0x40ca66
test edi, ecx
je 0x40ca1e
and byte [0x4458a7], 0xfb
jmp 0x40ca7e
test edi, ecx
je 0x40ca1e
and byte [0x4458a7], 0xf7
jmp 0x40ca7e
test edi, ecx
je 0x40ca1e
and byte [0x4458a7], 0xfd
jmp 0x40ca7e
test edi, ecx
jne 0x40ca26
mov dword [0x446164], ebx
jmp 0x40ca7e
and byte [0x4458a7], 0xfe
jmp 0x40ca7e
mov eax, dword [0x4458a4]
and eax, 0xfff8ffff
or eax, 0x80000
jmp 0x40ca79
cmp eax, 0x28
jl 0x40ca7e
cmp eax, 0x2f
jg 0x40ca7e
mov ebx, dword [0x4458a4]
add eax, 0xfd8
and ebx, 0xff0fffff
shl eax, 0x14
or ebx, eax
mov dword [0x4458a4], ebx
xor ebx, ebx
jmp 0x40ca7e
mov eax, dword [0x4458a4]
and eax, 0xff9fffff
or eax, 0x900000
mov dword [0x4458a4], eax
add edx, 4
dec esi
jne 0x40c8b5
mov eax, dword [0x4458a4]
cmp dword [0x445890], ebx
jmp 0x40d437
push 0
call fcn.0040d906
pop ecx
jmp 0x40cbbf
test ch, 1
je 0x40d07f
cmp dword [0x445824], ebp
jg case.0x40c4bd.73
mov eax, dword [0x4460c0]
cmp eax, ebp
jl 0x40cacc
cmp eax, 0x18
jl case.0x40c4bd.73
test eax, eax
jne 0x40cad3
push 0x18
pop eax
push 0
jmp 0x40cd89
test ch, 0x10
je 0x40d07f
mov eax, dword [0x4460c0]
test eax, eax
jne 0x40caee
mov eax, ebp
push ebp
push eax
push dword [0x446188]
push dword [0x446198]
call fcn.0040d669
add esp, 0x10
push 0x75e
jmp 0x40cb3c
test ch, 0x10
je 0x40d07f
mov eax, dword [0x4460c0]
test eax, eax
jne 0x40cb1f
mov eax, ebp
neg eax
push ebp
push eax
push dword [0x446188]
push dword [0x446198]
call fcn.0040d669
add esp, 0x10
push 0x765
push dword [0x4461a0]
call fcn.0040abda
pop ecx
and dword [0x445868], 0
pop ecx
mov ecx, dword [0x4461a4]
lea eax, [eax + ecx*4]
mov dword [0x446174], eax
jmp 0x40cbbf
test cl, 1
je 0x40d07f
mov esi, dword [0x4460c0]
test esi, esi
jne 0x40cb75
mov esi, ebp
mov ecx, dword [0x455280]
mov eax, dword [0x4461a4]
mov edi, dword [0x446174]
sub ecx, eax
cmp esi, ecx
jle 0x40cb8e
mov esi, ecx
mov ecx, dword [0x4461a0]
lea edx, [esi + eax]
push edx
push ecx
push eax
push ecx
mov dword [esp + 0x28], eax
call fcn.0040b4e0
add esp, 0x10
mov eax, esi
dec esi
test eax, eax
je 0x40cbbf
lea eax, [esi + 1]
mov ecx, dword [0x43cd34]
mov dword [edi], ecx
add edi, 4
dec eax
jne 0x40cbb1
mov dword [0x455060], ebp
jmp case.0x40c4bd.73
test cl, 2
je 0x40d07f
mov eax, dword [0x4460c0]
test eax, eax
mov ebx, eax
je 0x40cbe6
cmp eax, ebp
jne case.0x40c4bd.73
lea eax, [esp + 0x1c]
push str.e_2_1_1_112_112_1_0x
push eax
call fcn.00429370
add byte [esp + 0x26], bl
pop ecx
pop ecx
lea eax, [esp + 0x1c]
push 0x14
push eax
jmp 0x40d1ce
test ch, 0x40
je 0x40d07f
mov edx, dword [0x4460c0]
test edx, edx
jne 0x40cc1c
mov edx, ebp
mov ecx, dword [0x4461a0]
mov eax, dword [0x4461a4]
mov esi, ecx
mov edi, eax
test edx, edx
jle 0x40cc4c
test eax, eax
jle 0x40cc4c
dec eax
test eax, eax
mov dword [0x4461a4], eax
jle 0x40cc49
mov ebx, dword [0x446144]
cmp byte [ebx + eax], 0
je 0x40cc33
dec edx
jmp 0x40cc2b
push 0x7ab
push ecx
call fcn.0040abda
pop ecx
pop ecx
mov ecx, dword [0x4461a4]
push ecx
push dword [0x4461a0]
lea eax, [eax + ecx*4]
mov dword [0x446174], eax
push edi
push esi
call fcn.0040b4e0
jmp 0x40d24d
xor edi, edi
test cl, 2
je 0x40cebf
xor ebx, ebx
cmp dword [0x445824], edi
jle case.0x40c4bd.73
mov edi, 0x4460c0
jmp 0x40cca0
mov esi, dword [0x446180]
push 1
push esi
push dword [edi]
call fcn.0040dade
add esp, 0xc
inc ebx
add edi, 4
cmp ebx, dword [0x445824]
jl 0x40cc9a
jmp 0x40cefe
sub ebx, 0x16c
je 0x40ceba
sub ebx, 0x2104
je 0x40cdcf
sub ebx, 0x20c
je 0x40cd92
sub ebx, 0x600
je 0x40cd66
sub ebx, 0x12c9
je 0x40cd4d
sub ebx, 7
je 0x40cd18
sub ebx, 0x117
jne case.0x40c4bd.73
test ch, 0x40
je 0x40cebf
push 0xb
push str.e__0_136_0c
jmp 0x40d1ce
test ch, 0x40
je 0x40cebf
xor eax, eax
cmp dword [0x4460c0], edi
mov dword [0x43cd34], 0x98d820
setle al
cmp eax, edi
mov dword [0x445890], eax
je case.0x40c4bd.73
mov eax, dword [0x4458a4]
jmp 0x40d439
test ch, 0x40
je 0x40cebf
xor eax, eax
cmp dword [0x4460c0], ebp
setge al
jmp 0x40d1fd
test cl, 0x40
je 0x40cebf
cmp dword [0x445824], ebp
jne case.0x40c4bd.73
mov eax, dword [0x4460c0]
cmp eax, edi
jle case.0x40c4bd.73
push edi
push eax
push dword [0x455280]
jmp 0x40cdbd
test ch, 1
je 0x40cebf
cmp dword [0x445824], ebp
jg case.0x40c4bd.73
mov eax, dword [0x4460c0]
cmp eax, edi
jne 0x40cdb5
mov eax, dword [0x453c78]
push edi
push dword [0x455288]
push eax
call fcn.00402337
add esp, 0xc
call fcn.0040ef3d
jmp case.0x40c4bd.73
mov edx, dword [0x4460c0]
mov eax, edx
sub eax, edi
je 0x40ce32
sub eax, 0x28
je 0x40ce24
dec eax
je 0x40ce32
dec eax
je 0x40ce18
sub eax, 8
je 0x40ce3c
sub eax, 0xb
je 0x40ce0e
dec eax
je 0x40ce04
cmp edx, 0x3c
jle 0x40ce3c
cmp edx, 0x46
jge 0x40ce3c
or cx, 0x1ff
jmp 0x40ce2a
and cx, 0xfe1f
or ecx, 0x1f
jmp 0x40ce2a
and cx, 0xfe0f
or ecx, 0xf
jmp 0x40ce2a
mov dword [0x43cd30], 0x1001
jmp 0x40ce3c
and ecx, 0x1ff
mov dword [0x43cd30], ecx
jmp 0x40ce3c
mov dword [0x43cd30], 0xffff
cmp edx, 0x32
jne case.0x40c4bd.73
mov ebx, str.e__6c
push 0x43d53c
push ebx
call fcn.00429370
cmp dword [0x445824], ebp
pop ecx
pop ecx
mov edi, ebp
jle 0x40cea8
mov esi, 0x4460c4
cmp esi, 0x4460c4
je 0x40ce7b
push 0x43d538
push ebx
call fcn.00429380
pop ecx
pop ecx
push dword [esi]
lea eax, [esp + 0x60]
push 0x43d534
push eax
call fcn.00428720
add esp, 0xc
lea eax, [esp + 0x5c]
push eax
push ebx
call fcn.00429380
inc edi
pop ecx
add esi, 4
cmp edi, dword [0x445824]
pop ecx
jl 0x40ce66
push 0x43d530
push ebx
call fcn.00429380
jmp 0x40d1d3
xor edi, edi
test cl, 2
jne 0x40ceca
mov dword [0x446164], edi
jmp case.0x40c4bd.73
xor ebx, ebx
cmp dword [0x445824], edi
jle case.0x40c4bd.73
mov edi, 0x4460c0
jmp 0x40cee5
mov esi, dword [0x446180]
push 0
push esi
push dword [edi]
call fcn.0040dade
add esp, 0xc
inc ebx
add edi, 4
cmp ebx, dword [0x445824]
jl 0x40cedf
push 1
pop ebp
jmp case.0x40c4bd.73
xor eax, eax
cmp ebx, 0x30
mov dword [0x445810], eax
jl 0x40cf6e
cmp ebx, 0x39
jle 0x40d095
cmp ebx, 0x4c
je 0x40cf5a
cmp ebx, 0x50
je 0x40cf4e
cmp ebx, 0x52
je 0x40cf44
cmp ebx, 0x57
jne 0x40cf6e
mov dword [0x446164], 4
mov dword [0x445810], ebp
jmp case.0x40c4bd.73
call fcn.00404f12
jmp 0x40d07a
mov dword [0x446164], 6
jmp 0x40cfc4
cmp dword [0x4460c0], 2
jne 0x40cf6e
mov dword [0x4460c0], ebp
jmp case.0x40c4bd.73
mov dword [0x446164], 7
jmp 0x40cfc4
cmp ebx, 0xa
je 0x40d07f
cmp ebx, 0xd
je 0x40d07f
cmp ebx, 0x9c
je 0x40cfce
cmp ebx, 7
je 0x40cfce
cmp ebx, 0x1b
jne 0x40cfad
mov dword [0x446164], 8
jmp case.0x40c4bd.73
mov eax, dword [0x4458ac]
cmp eax, 0x800
jge case.0x40c4bd.73
mov byte [eax + 0x4458b8], bl
inc eax
mov dword [0x4458ac], eax
jmp case.0x40c4bd.73
call fcn.0040dd33
jmp 0x40d07f
mov ecx, dword [0x4458ac]
mov eax, ecx
neg eax
sbb eax, eax
and al, 0xfb
add eax, 0x15
cmp ebx, 0x30
jl 0x40cff8
cmp ebx, 0x39
jg 0x40cff8
add ebx, 0xffffffd0
jmp 0x40d018
cmp ebx, 0x41
jl 0x40d009
lea edx, [eax + 0x37]
cmp ebx, edx
jg 0x40d009
add ebx, 0xffffffc9
jmp 0x40d018
cmp ebx, 0x61
jl 0x40d07f
add eax, 0x57
cmp ebx, eax
jg 0x40d07f
add ebx, 0xffffffa9
mov byte [ecx + 0x4458b8], bl
inc ecx
cmp ecx, 7
mov dword [0x4458ac], ecx
jl case.0x40c4bd.73
movsx eax, byte [0x4458bd]
movsx ecx, byte [0x4458be]
shl eax, 4
add eax, ecx
movsx ecx, byte [0x4458bc]
push eax
movsx eax, byte [0x4458bb]
shl eax, 4
add eax, ecx
movsx ecx, byte [0x4458ba]
push eax
movsx eax, byte [0x4458b9]
shl eax, 4
add eax, ecx
push eax
movsx eax, byte [0x4458b8]
push eax
call fcn.00404e0b
add esp, 0x10
call fcn.0040e2e9
and dword [0x446164], 0
jmp case.0x40c4bd.73
cmp ebx, 0x30
jl 0x40d0ab
cmp ebx, 0x39
jg 0x40d0ab
mov eax, dword [0x4460c0]
lea eax, [eax + eax*4]
lea eax, [ebx + eax*2 - 0x30]
mov dword [0x4460c0], eax
jmp case.0x40c4bd.73
and dword [0x4458ac], 0
mov dword [0x446164], 7
jmp case.0x40c4bd.73
and dword [0x446164], 0
add ebx, 0xffffffc4
cmp ebx, 0x3b
mov dword [0x455060], ebp
ja case.0x40c4bd.73
movzx ebx, byte [ebx + 0x40d62d]
jmp dword [ebx*4 + 0x40d5a1]
mov eax, dword [0x4461a0]
push ebp
dec eax
jmp 0x40d0f8
mov eax, dword [0x4461a0]
push ebp
inc eax
push eax
push dword [0x4461a4]
jmp 0x40d3b2
mov eax, dword [0x4461a4]
push ebp
push dword [0x4461a0]
inc eax
jmp 0x40d152
mov eax, dword [0x4461a4]
push ebp
push dword [0x4461a0]
dec eax
jmp 0x40d152
and dword [0x44617c], 0
mov dword [0x445828], 0xd900
jmp case.0x40c4bd.73
and dword [0x44617c], 0
mov dword [0x445828], 0xd800
jmp case.0x40c4bd.73
xor eax, eax
push eax
push eax
push eax
jmp 0x40d3b2
cmp dword [0x4461a0], 0
jne 0x40d177
mov eax, dword [0x455288]
push ebp
dec eax
push 0xffffffffffffffff
push eax
push 0
call fcn.0040d669
add esp, 0x10
jmp 0x40d17f
jle 0x40d17f
dec dword [0x4461a0]
push 0x8c0
push dword [0x4461a0]
call fcn.0040abda
pop ecx
and dword [0x445868], 0
pop ecx
mov ecx, dword [0x4461a4]
lea eax, [eax + ecx*4]
mov dword [0x446174], eax
jmp case.0x40c4bd.73
push ebp
xor esi, esi
jmp 0x40d215
push ebp
push 0
jmp 0x40d2e3
mov dword [0x446164], 0xa
jmp case.0x40c4bd.73
push 3
push 0x43d52c
call fcn.0041121e
pop ecx
pop ecx
jmp case.0x40c4bd.73
mov dword [0x454e28], ebp
jmp case.0x40c4bd.73
and dword [0x454e28], 0
jmp case.0x40c4bd.73
and dword [0x454c04], 0
mov eax, dword [0x453c70]
mov dword [0x446190], eax
jmp case.0x40c4bd.73
xor esi, esi
push esi
push esi
push esi
call fcn.0040d865
add esp, 0xc
push ebp
push esi
jmp 0x40d277
mov ecx, dword [0x4461a0]
mov eax, dword [0x446188]
cmp ecx, eax
jg case.0x40c4bd.73
push 0
push 0xffffffffffffffff
jmp 0x40d246
mov ecx, dword [0x4461a0]
mov eax, dword [0x446188]
cmp ecx, eax
jg case.0x40c4bd.73
push ebp
push ebp
push eax
push ecx
call fcn.0040d669
add esp, 0x10
jmp case.0x40c4bd.73
mov dword [0x446164], 0xc
jmp case.0x40c4bd.73
mov dword [0x446164], 0xd
jmp case.0x40c4bd.73
xor esi, esi
push esi
push ebp
push esi
call fcn.0040b403
add esp, 0xc
mov dword [0x445850], esi
jmp case.0x40c4bd.73
mov dword [0x4458b4], ebp
jmp case.0x40c4bd.73
and dword [0x4458b4], 0
jmp case.0x40c4bd.73
push ebp
push ebp
push ebp
call fcn.0040b403
and dword [0x4461a4], 0
and dword [0x445868], 0
add esp, 0xc
push 0x922
push dword [0x4461a0]
call fcn.0040abda
pop ecx
pop ecx
mov ecx, dword [0x4461a4]
lea eax, [eax + ecx*4]
mov dword [0x446174], eax
jmp case.0x40c4bd.73
push 0
push ebp
push ebp
call fcn.0040b403
jmp 0x40d3b7
or byte [0x4458a7], 4
jmp case.0x40c4bd.73
and byte [0x4458a7], 0xfb
jmp case.0x40c4bd.73
mov dword [0x44581c], ebp
jmp case.0x40c4bd.73
and dword [0x44581c], 0
jmp case.0x40c4bd.73
and dword [0x4458b0], 0
cmp dword [0x445890], 0
mov dword [0x4458a4], 0x980000
je case.0x40c4bd.73
mov dword [0x43cd34], 0x98d820
jmp case.0x40c4bd.73
or byte [0x4458a7], 2
jmp case.0x40c4bd.73
and byte [0x4458a7], 0xfd
jmp case.0x40c4bd.73
or byte [0x4458a7], 1
mov dword [0x4458b0], ebp
jmp case.0x40c4bd.73
and dword [0x4458b0], 0
and byte [0x4458a7], 0xfe
jmp case.0x40c4bd.73
add ebx, 0xffffffe0
push 0
push ebx
mov dword [0x446164], 0xb
push dword [0x4461a4]
jmp 0x40d3b2
and dword [0x446164], 0
push 0
push dword [0x4461a0]
add ebx, 0xffffffe0
push ebx
call fcn.0040d865
add esp, 0xc
jmp case.0x40c4bd.73
mov edx, dword [0x4458a4]
mov eax, ebx
and eax, 7
and edx, 0xfef0ffff
shl eax, 0x10
xor ecx, ecx
or eax, edx
test bl, 8
mov dword [0x446164], ecx
mov dword [0x4458a4], eax
jne 0x40d3ef
cmp dword [0x4458b0], ecx
je 0x40d3f9
or eax, 0x1000000
mov dword [0x4458a4], eax
cmp dword [0x445890], ecx
jmp 0x40d437
mov eax, dword [0x4458a4]
and dword [0x446164], 0
mov ecx, ebx
and eax, 0xf70fffff
and ecx, 7
shl ecx, 0x14
or eax, ecx
test bl, 8
mov dword [0x4458a4], eax
je 0x40d430
or eax, 0x8000000
mov dword [0x4458a4], eax
cmp dword [0x445890], 0
je case.0x40c4bd.73
and eax, 0xff0000
or ax, 0xd820
mov dword [0x43cd34], eax
cmp dword [0x44615c], 0
je 0x40d47e
mov edx, dword [0x4461a4]
mov esi, dword [0x4461a0]
cmp edx, dword [0x455280]
mov ecx, esi
mov dword [esp + 0x18], edx
jne 0x40d46f
xor eax, eax
inc ecx
jmp 0x40d472
lea eax, [edx + 1]
push eax
push ecx
push edx
push esi
call fcn.0040b4e0
add esp, 0x10
inc dword [esp + 0x10]
mov eax, dword [esp + 0x10]
cmp eax, dword [0x454e30]
jl 0x40b53b
pop ebx
pop ebp
pop esi
pop edi
and dword [0x454e30], 0
add esp, 0x18c
ret