Function at 0x567990
Capabilities:
Parse credit card information
Resolve function by parsing pe exports

Disassembly:
mov ecx, dword [0x7c3e14]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
lea eax, [esp - 0x20]
cmp eax, dword [ecx + 8]
jbe 0x568a2f
sub esp, 0xa0
mov dword [esp + 0xb0], 0
mov dword [esp + 0xb4], 0
mov dword [esp + 0xb8], 0
mov dword [esp + 0x90], 0
mov dword [esp + 0x94], 0
mov dword [esp + 0x98], 0
mov dword [esp + 0x9c], 0
lea eax, [0x568a40]
mov dword [esp + 0x90], eax
lea eax, [esp + 0xb4]
mov dword [esp + 0x94], eax
mov eax, dword [esp + 0xa8]
mov dword [esp + 0x9c], eax
mov ecx, dword [esp + 0xa4]
mov dword [esp + 0x98], ecx
lea edx, [esp + 0x90]
mov dword [esp + 0x58], edx
lea edx, [esp + 0x4c]
mov dword [esp], edx
call fcn.004372e0
test eax, eax
jne 0x567b74
movzx eax, word [esp + 0xac]
test ax, 2
jne 0x567ac9
lea eax, [0x5fcf00]
mov dword [esp], eax
call fcn.0040c420
mov eax, dword [esp + 4]
movzx ecx, word [esp + 0xac]
mov word [eax], cx
mov ecx, dword [esp + 0xa8]
mov dword [eax + 0x1c], ecx
mov edx, dword [0x7c3fa0]
test edx, edx
jne 0x567a99
mov edx, dword [esp + 0xa4]
jmp 0x567aa7
call fcn.00468400
mov edx, dword [esp + 0xa4]
mov dword [edi], edx
mov dword [esp + 0x8c], eax
mov dword [eax + 0x18], edx
mov ebx, ecx
mov ebp, edx
xor esi, esi
xor edi, edi
xor ecx, ecx
mov dword [esp + 0x84], ecx
mov ecx, ebx
jmp 0x567c71
mov eax, dword [esp + 0xa4]
mov dword [esp], eax
mov ecx, dword [esp + 0xa8]
mov dword [esp + 4], ecx
call fcn.0056c460
mov eax, dword [esp + 8]
test eax, eax
jne 0x567b47
lea eax, [0x5fbfa0]
mov dword [esp], eax
call fcn.0040c420
mov eax, dword [esp + 4]
mov byte [eax], 3
movzx ecx, word [esp + 0xac]
mov word [eax + 2], cx
mov dword [eax + 0x18], 0
mov dword [eax + 0x1c], 2
mov ecx, dword [0x7c3fa0]
lea edx, [eax + 0x20]
test ecx, ecx
je 0x567b2e
call fcn.00468400
mov dword [edi], edx
mov dword [esp + 0x7c], eax
mov dword [eax + 0x14], edx
mov ecx, dword [esp + 0xa8]
mov edx, dword [esp + 0xa4]
xor ebx, ebx
jmp 0x567b93
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov dword [esp + 0xb0], 0
mov dword [esp + 0xb4], eax
mov dword [esp + 0xb8], ecx
call fcn.00437870
add esp, 0xa0
ret
call fcn.00437870
add esp, 0xa0
ret
mov edi, dword [eax + 0x14]
lea edx, [esi + 1]
mov dword [eax + 0x18], edx
mov dword [edi + esi*4], ebp
mov edx, dword [esp + 0xa4]
cmp ecx, ebx
jle 0x567c22
movzx ebp, byte [edx + ebx]
cmp ebp, 0x80
jge 0x567baa
inc ebx
jmp 0x567bd4
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], ebx
call fcn.0045f560
mov ebp, dword [esp + 0xc]
mov ebx, dword [esp + 0x10]
mov eax, dword [esp + 0x7c]
mov ecx, dword [esp + 0xa8]
mov edx, dword [esp + 0xa4]
mov esi, dword [eax + 0x18]
cmp dword [eax + 0x1c], esi
jg 0x567b80
mov dword [esp], 0
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call fcn.00451a10
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0xc]
mov ebx, dword [esp + 0x7c]
mov dword [ebx + 0x18], eax
mov dword [ebx + 0x1c], ecx
mov eax, dword [0x7c3fa0]
test eax, eax
je 0x567c1d
call fcn.00468410
mov dword [edi], edx
mov eax, dword [ebx + 0x14]
mov dword [edi + 4], eax
mov dword [ebx + 0x14], edx
jmp 0x567c24
mov ebx, eax
mov dword [esp + 0xb0], ebx
mov dword [esp + 0xb4], 0
mov dword [esp + 0xb8], 0
call fcn.00437870
add esp, 0xa0
ret
mov ecx, ebp
mov edi, edx
mov dword [esp + 0x84], esi
mov ebp, dword [esp + 0xa4]
mov edx, ebx
mov esi, eax
mov eax, dword [esp + 0x8c]
mov ebx, dword [esp + 0xa8]
test ecx, ecx
je 0x568887
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x70], edx
xchg esi, eax
mov byte [esp + 0x3b], al
xchg esi, eax
movzx ebp, byte [edx]
xchg ebp, eax
cmp al, 0x2e
xchg ebp, eax
ja 0x567e8a
xchg ebp, eax
cmp al, 0x28
xchg ebp, eax
ja 0x567dc3
xchg ebp, eax
cmp al, 0x24
xchg ebp, eax
jne 0x567d0d
movzx ebp, word [eax]
test bp, 0x10
je 0x567cd2
mov dword [esp], eax
mov byte [esp + 4], 0xa
call fcn.005652c0
mov eax, dword [esp + 8]
movzx ecx, word [eax + 2]
or ecx, 0x100
mov word [eax + 2], cx
jmp 0x567cdf
mov dword [esp], eax
mov byte [esp + 4], 8
call fcn.005652c0
mov ebx, dword [esp + 0x3c]
dec ebx
mov ebp, ebx
neg ebx
sar ebx, 0x1f
and ebx, 1
mov eax, ebp
mov ebp, dword [esp + 0x70]
add ebx, ebp
mov ecx, dword [esp + 0x8c]
mov ebp, eax
movzx eax, byte [esp + 0x3b]
xor edx, edx
xor esi, esi
jmp 0x567c4d
xchg ebp, eax
cmp al, 0x28
xchg ebp, eax
jne 0x5684c5
movzx ebp, word [eax]
test bp, 0x40
je 0x567d7c
cmp ecx, 2
jl 0x567d7c
cmp byte [edx + 1], 0x3f
jne 0x567d7c
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call fcn.00568e10
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x14]
mov ebx, dword [esp + 0xc]
mov ebp, dword [esp + 0x10]
mov dword [esp + 0xb4], eax
mov dword [esp + 0xb8], ecx
test edx, edx
jne 0x5686ac
mov ecx, dword [esp + 0x8c]
movzx eax, byte [esp + 0x3b]
xor edx, edx
xor esi, esi
jmp 0x567c4d
inc dword [eax + 0x14]
mov dword [esp], eax
mov byte [esp + 4], pe_nt_image_headers32
call fcn.005652c0
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0x8c]
mov edx, dword [ecx + 0x14]
mov dword [eax + 0x30], edx
mov eax, dword [esp + 0x3c]
lea ebp, [eax - 1]
mov eax, ebp
neg eax
sar eax, 0x1f
and eax, 1
mov edx, dword [esp + 0x70]
lea ebx, [edx + eax]
movzx eax, byte [esp + 0x3b]
xor edx, edx
xor esi, esi
jmp 0x567c4d
xchg ebp, eax
cmp al, 0x29
xchg ebp, eax
je 0x567e33
xchg ebp, eax
cmp al, 0x2b
xchg ebp, eax
jbe 0x56839c
xchg ebp, eax
cmp al, 0x2e
xchg ebp, eax
jne 0x5684c5
movzx ebp, word [eax]
test bp, 8
je 0x567df9
mov dword [esp], eax
mov byte [esp + 4], 6
call fcn.005652c0
jmp 0x567e06
mov dword [esp], eax
mov byte [esp + 4], 5
call fcn.005652c0
mov eax, dword [esp + 0x3c]
lea ebp, [eax - 1]
mov eax, ebp
neg eax
sar eax, 0x1f
and eax, 1
mov ecx, dword [esp + 0x70]
lea ebx, [ecx + eax]
mov ecx, dword [esp + 0x8c]
movzx eax, byte [esp + 0x3b]
xor edx, edx
xor esi, esi
jmp 0x567c4d
mov dword [esp], eax
call fcn.00569a20
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
mov edx, dword [esp + 4]
mov dword [esp + 0xb4], eax
mov dword [esp + 0xb8], ecx
test edx, edx
jne 0x5686c3
mov eax, dword [esp + 0x3c]
lea ebp, [eax - 1]
mov eax, ebp
neg eax
sar eax, 0x1f
and eax, 1
mov ecx, dword [esp + 0x70]
lea ebx, [ecx + eax]
mov ecx, dword [esp + 0x8c]
movzx eax, byte [esp + 0x3b]
xor edx, edx
xor esi, esi
jmp 0x567c4d
xchg ebp, eax
cmp al, 0x5c
xchg ebp, eax
ja 0x568459
xchg ebp, eax
cmp al, 0x3f
xchg ebp, eax
je 0x56839c
xchg ebp, eax
cmp al, 0x5b
xchg ebp, eax
je 0x56834d
xchg ebp, eax
cmp al, 0x5c
xchg ebp, eax
jne 0x5684c5
movzx ebp, word [eax]
test bp, 0x40
je 0x568049
cmp ecx, 2
jl 0x568049
movzx ebp, byte [edx + 1]
xchg ebp, eax
cmp al, 0x43
xchg ebp, eax
ja 0x567f6e
xchg ebp, eax
cmp al, 0x41
xchg ebp, eax
je 0x567f34
xchg ebp, eax
cmp al, 0x42
xchg ebp, eax
je 0x567efa
xchg ebp, eax
cmp al, 0x43
xchg ebp, eax
jne 0x568049
jmp 0x5686da
mov dword [esp], eax
mov byte [esp + 4], 0xc
call fcn.005652c0
mov eax, dword [esp + 0x3c]
lea ebp, [eax - 2]
mov eax, ebp
neg eax
sar eax, 0x1f
and eax, 2
mov ecx, dword [esp + 0x70]
lea ebx, [ecx + eax]
mov ecx, dword [esp + 0x8c]
movzx eax, byte [esp + 0x3b]
xor edx, edx
xor esi, esi
jmp 0x567c4d
mov dword [esp], eax
mov byte [esp + 4], 9
call fcn.005652c0
mov eax, dword [esp + 0x3c]
lea ebp, [eax - 2]
mov eax, ebp
neg eax
sar eax, 0x1f
and eax, 2
mov ecx, dword [esp + 0x70]
lea ebx, [ecx + eax]
mov ecx, dword [esp + 0x8c]
movzx eax, byte [esp + 0x3b]
xor edx, edx
xor esi, esi
jmp 0x567c4d
xchg ebp, eax
cmp al, 0x51
xchg ebp, eax
je 0x567fff
xchg ebp, eax
cmp al, 0x62
xchg ebp, eax
je 0x567fc5
xchg ebp, eax
cmp al, 0x7a
xchg ebp, eax
jne 0x568049
mov dword [esp], eax
mov byte [esp + 4], 0xa
call fcn.005652c0
mov eax, dword [esp + 0x3c]
lea ebp, [eax - 2]
mov eax, ebp
neg eax
sar eax, 0x1f
and eax, 2
mov ecx, dword [esp + 0x70]
lea ebx, [ecx + eax]
mov ecx, dword [esp + 0x8c]
movzx eax, byte [esp + 0x3b]
xor edx, edx
xor esi, esi
jmp 0x567c4d
mov dword [esp], eax
mov byte [esp + 4], 0xb
call fcn.005652c0
mov eax, dword [esp + 0x3c]
lea ebp, [eax - 2]
mov eax, ebp
neg eax
sar eax, 0x1f
and eax, 2
mov ecx, dword [esp + 0x70]
lea ebx, [ecx + eax]
mov ecx, dword [esp + 0x8c]
movzx eax, byte [esp + 0x3b]
xor edx, edx
xor esi, esi
jmp 0x567c4d
lea eax, [ecx - 2]
mov ecx, eax
neg eax
sar eax, 0x1f
and eax, 2
add eax, edx
mov dword [esp], eax
mov dword [esp + 4], ecx
lea eax, [0x60a348]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 2
call fcn.004d1c30
mov eax, dword [esp + 0x18]
mov dword [esp + 0x70], eax
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x3c], ecx
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0x14]
jmp 0x5689cf
mov edi, dword [eax + 0x10]
nop
test edi, edi
je 0x5680bb
mov dword [esp + 0x78], edi
mov ebp, dword [0x7c3fa0]
mov ebx, dword [edi + 0x10]
test ebp, ebp
je 0x5680a9
mov dword [esp + 0x88], ebx
mov ecx, edi
call fcn.00468410
mov dword [edi], ebx
mov edx, dword [eax + 0x10]
mov dword [edi + 4], edx
lea edx, [0x5fbfa0]
mov dword [esp], edx
mov dword [esp + 4], ecx
call fcn.00411630
mov eax, dword [esp + 0x8c]
mov ecx, dword [esp + 0x3c]
mov edx, dword [esp + 0x70]
mov ebx, dword [esp + 0x88]
movzx esi, byte [esp + 0x3b]
mov edi, dword [esp + 0x78]
mov dword [eax + 0x10], ebx
mov ebx, eax
xor eax, eax
call fcn.00468601
mov edi, dword [esp + 0x78]
jmp 0x5680e2
lea eax, [0x5fbfa0]
mov dword [esp], eax
call fcn.0040c420
mov edi, dword [esp + 4]
mov eax, dword [esp + 0x8c]
inc dword [eax + 0x2c]
mov edx, dword [esp + 0x70]
mov ebx, eax
movzx esi, byte [esp + 0x3b]
mov dword [esp + 0x74], edi
mov byte [edi], 4
movzx eax, word [ebx]
mov word [edi + 2], ax
mov eax, dword [esp + 0x3c]
cmp eax, 2
jl 0x5681cd
movzx ecx, byte [edx + 1]
cmp cl, 0x70
je 0x56810f
cmp cl, 0x50
jne 0x5681cd
mov dword [esp], ebx
mov dword [esp + 4], edx
mov dword [esp + 8], eax
lea ecx, [edi + 0x20]
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], 0
mov dword [esp + 0x14], 2
call fcn.0056a7f0
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x28]
test eax, eax
jne 0x56874b
mov eax, dword [esp + 0x18]
test eax, eax
je 0x5681ba
mov dword [esp + 0x3c], edx
mov dword [esp + 0x70], ecx
mov eax, dword [esp + 0x20]
mov ebx, dword [esp + 0x1c]
mov ebp, dword [esp + 0x18]
mov esi, dword [esp + 0x74]
mov dword [esi + 0x18], ebx
mov dword [esi + 0x1c], eax
mov eax, dword [0x7c3fa0]
test eax, eax
je 0x568187
call fcn.00468410
mov dword [edi], ebp
mov eax, dword [esi + 0x14]
mov dword [edi + 4], eax
mov dword [esi + 0x14], ebp
mov eax, dword [esp + 0x8c]
mov dword [esp], eax
mov dword [esp + 4], esi
call fcn.00564ba0
mov ecx, dword [esp + 0x8c]
mov ebp, dword [esp + 0x3c]
mov ebx, dword [esp + 0x70]
movzx eax, byte [esp + 0x3b]
xor edx, edx
xor esi, esi
jmp 0x567c4d
mov eax, dword [esp + 0x3c]
mov edx, dword [esp + 0x70]
mov ebx, dword [esp + 0x8c]
mov edi, dword [esp + 0x74]
mov dword [esp], ebx
mov dword [esp + 4], edx
mov dword [esp + 8], eax
lea ecx, [edi + 0x20]
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], 0
mov dword [esp + 0x14], 2
call fcn.0056a2a0
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x28]
test eax, eax
je 0x56826c
mov dword [esp + 0x3c], edx
mov dword [esp + 0x70], ecx
mov eax, dword [esp + 0x20]
mov ebx, dword [esp + 0x1c]
mov ebp, dword [esp + 0x18]
mov esi, dword [esp + 0x74]
mov dword [esi + 0x18], ebx
mov dword [esi + 0x1c], eax
mov eax, dword [0x7c3fa0]
test eax, eax
je 0x568239
call fcn.00468410
mov dword [edi], ebp
mov eax, dword [esi + 0x14]
mov dword [edi + 4], eax
mov dword [esi + 0x14], ebp
mov eax, dword [esp + 0x8c]
mov dword [esp], eax
mov dword [esp + 4], esi
call fcn.00564ba0
mov ecx, dword [esp + 0x8c]
mov ebp, dword [esp + 0x3c]
mov ebx, dword [esp + 0x70]
movzx eax, byte [esp + 0x3b]
xor edx, edx
xor esi, esi
jmp 0x567c4d
mov eax, dword [esp + 0x8c]
mov ecx, dword [eax + 0x3c]
nop
test ecx, ecx
je 0x56829c
mov eax, dword [esp + 0x74]
lea ebx, [0x5e0460]
mov dword [esp], ebx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.0040f640
mov eax, dword [esp + 0x8c]
mov ecx, dword [0x7c3fa0]
mov edx, dword [eax + 0x10]
test ecx, ecx
jne 0x5682af
mov ecx, dword [esp + 0x74]
jmp 0x5682c9
call fcn.00468430
mov dword [edi], edx
mov ecx, dword [esp + 0x74]
mov ebx, dword [ecx + 0x10]
mov dword [edi + 4], ebx
mov dword [edi + 8], ecx
mov ebx, dword [eax + 0x10]
mov dword [edi + 0xc], ebx
mov dword [ecx + 0x10], edx
mov dword [eax + 0x10], ecx
mov dword [esp], eax
mov ecx, dword [esp + 0x70]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x3c]
mov dword [esp + 8], ecx
call fcn.00569bf0
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0x10]
mov ebp, dword [esp + 0x14]
mov esi, dword [esp + 0xc]
mov dword [esp + 0xb4], eax
mov dword [esp + 0xb8], ecx
test edx, edx
jne 0x568778
mov dword [esp + 0x70], ebx
mov dword [esp + 0x3c], ebp
mov eax, dword [esp + 0x8c]
mov dword [esp], eax
mov dword [esp + 4], esi
call fcn.00565120
mov ecx, dword [esp + 0x8c]
mov ebp, dword [esp + 0x3c]
mov ebx, dword [esp + 0x70]
movzx eax, byte [esp + 0x3b]
xor edx, edx
xor esi, esi
jmp 0x567c4d
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call fcn.0056aeb0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x14]
mov ebx, dword [esp + 0xc]
mov ebp, dword [esp + 0x10]
mov dword [esp + 0xb4], eax
mov dword [esp + 0xb8], ecx
test edx, edx
jne 0x56878f
mov ecx, dword [esp + 0x8c]
movzx eax, byte [esp + 0x3b]
xor edx, edx
xor esi, esi
jmp 0x567c4d
xchg ebp, eax
cmp al, 0x2a
xchg ebp, eax
jne 0x5683aa
mov esi, 0xe
jmp 0x5683c4
xchg ebp, eax
cmp al, 0x2b
xchg ebp, eax
jne 0x5683b8
mov esi, 0xf
jmp 0x5683c4
xchg ebp, eax
cmp al, 0x3f
xchg ebp, eax
jne 0x5683c4
mov esi, 0x10
xchg esi, eax
mov byte [esp + 0x3b], al
xchg esi, eax
mov dword [esp], eax
xchg esi, eax
mov byte [esp + 4], al
xchg esi, eax
mov dword [esp + 8], 0
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], edx
mov dword [esp + 0x14], ecx
lea ebx, [ecx - 1]
mov ebp, ebx
neg ebx
sar ebx, 0x1f
and ebx, 1
add ebx, edx
mov dword [esp + 0x18], ebx
mov dword [esp + 0x1c], ebp
mov ebx, dword [esp + 0x84]
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], edi
call fcn.00565390
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x34]
mov edx, dword [esp + 0x30]
mov ebx, dword [esp + 0x28]
mov ebp, dword [esp + 0x2c]
mov dword [esp + 0xb4], eax
mov dword [esp + 0xb8], ecx
test edx, edx
jne 0x5687a6
mov ecx, dword [esp + 0x8c]
movzx eax, byte [esp + 0x3b]
mov edx, dword [esp + 0x3c]
mov esi, dword [esp + 0x70]
jmp 0x567c4d
xchg ebp, eax
cmp al, 0x5e
xchg ebp, eax
jne 0x5684b3
movzx ebp, word [eax]
test bp, 0x10
je 0x568479
mov dword [esp], eax
mov byte [esp + 4], 9
call fcn.005652c0
jmp 0x568486
mov dword [esp], eax
mov byte [esp + 4], 7
call fcn.005652c0
mov eax, dword [esp + 0x3c]
lea ebp, [eax - 1]
mov eax, ebp
neg eax
sar eax, 0x1f
and eax, 1
mov ecx, dword [esp + 0x70]
lea ebx, [ecx + eax]
mov ecx, dword [esp + 0x8c]
movzx eax, byte [esp + 0x3b]
xor edx, edx
xor esi, esi
jmp 0x567c4d
xchg ebp, eax
cmp al, 0x7b
xchg ebp, eax
je 0x56858e
xchg ebp, eax
cmp al, 0x7c
xchg ebp, eax
je 0x568537
mov dword [esp], edx
mov dword [esp + 4], ecx
call fcn.0056c550
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x14]
mov ebx, dword [esp + 0xc]
mov ebp, dword [esp + 0x10]
mov esi, dword [esp + 8]
mov dword [esp + 0xb4], eax
mov dword [esp + 0xb8], ecx
test edx, edx
jne 0x5687bd
mov dword [esp + 0x3c], ebp
mov dword [esp + 0x70], ebx
mov eax, dword [esp + 0x8c]
mov dword [esp], eax
mov dword [esp + 4], esi
call fcn.00565120
mov ecx, dword [esp + 0x8c]
mov ebp, dword [esp + 0x3c]
mov ebx, dword [esp + 0x70]
movzx eax, byte [esp + 0x3b]
xor edx, edx
xor esi, esi
jmp 0x567c4d
mov dword [esp], eax
call fcn.005694b0
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
mov edx, dword [esp + 4]
mov dword [esp + 0xb4], eax
mov dword [esp + 0xb8], ecx
test edx, edx
jne 0x5687d4
mov eax, dword [esp + 0x3c]
lea ebp, [eax - 1]
mov eax, ebp
neg eax
sar eax, 0x1f
and eax, 1
mov ecx, dword [esp + 0x70]
lea ebx, [ecx + eax]
mov ecx, dword [esp + 0x8c]
movzx eax, byte [esp + 0x3b]
xor edx, edx
xor esi, esi
jmp 0x567c4d
mov dword [esp + 0x44], edi
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call fcn.00568c10
movzx eax, byte [esp + 0x1c]
test al, al
jne 0x5685ef
mov eax, dword [esp + 0x8c]
mov dword [esp], eax
mov dword [esp + 4], 0x7b
call fcn.00565120
mov eax, dword [esp + 0x3c]
lea ebp, [eax - 1]
mov eax, ebp
neg eax
sar eax, 0x1f
and eax, 1
mov ecx, dword [esp + 0x70]
lea ebx, [ecx + eax]
mov ecx, dword [esp + 0x8c]
mov eax, 0x11
xor edx, edx
xor esi, esi
jmp 0x567c4d
mov eax, dword [esp + 0xc]
mov ebx, dword [esp + 0x18]
cmp eax, 0x3e8
ja 0x568802
mov ebp, dword [esp + 0x10]
cmp ebp, 0x3e8
jg 0x568802
test ebp, ebp
jl 0x56861e
cmp ebp, eax
jl 0x568802
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x8c]
mov dword [esp], edx
mov byte [esp + 4], 0x11
mov dword [esp + 8], eax
mov dword [esp + 0xc], ebp
mov eax, dword [esp + 0x70]
mov dword [esp + 0x10], eax
mov ebp, dword [esp + 0x3c]
mov dword [esp + 0x14], ebp
mov dword [esp + 0x18], ecx
mov dword [esp + 0x1c], ebx
mov ecx, dword [esp + 0x84]
mov dword [esp + 0x20], ecx
mov ecx, dword [esp + 0x44]
mov dword [esp + 0x24], ecx
call fcn.00565390
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x34]
mov edx, dword [esp + 0x30]
mov ebx, dword [esp + 0x28]
mov ebp, dword [esp + 0x2c]
mov dword [esp + 0xb4], eax
mov dword [esp + 0xb8], ecx
test edx, edx
jne 0x5687eb
mov ecx, dword [esp + 0x8c]
mov eax, 0x11
mov edx, dword [esp + 0x3c]
mov esi, dword [esp + 0x70]
jmp 0x567c4d
mov dword [esp + 0xb0], 0
call fcn.00437870
add esp, 0xa0
ret
mov dword [esp + 0xb0], 0
call fcn.00437870
add esp, 0xa0
ret
lea eax, [0x5eb740]
mov dword [esp], eax
call fcn.0040c420
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x17
lea ecx, [0x611a81]
mov dword [eax], ecx
mov dword [eax + 0xc], 2
mov ecx, dword [0x7c3fa0]
test ecx, ecx
jne 0x568712
mov ecx, dword [esp + 0x70]
jmp 0x56871d
call fcn.00468400
mov ecx, dword [esp + 0x70]
mov dword [edi], ecx
mov dword [eax + 8], ecx
mov dword [esp + 0xb0], 0
lea ecx, [0x659edc]
mov dword [esp + 0xb4], ecx
mov dword [esp + 0xb8], eax
call fcn.00437870
add esp, 0xa0
ret
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x30]
mov dword [esp + 0xb0], 0
mov dword [esp + 0xb4], eax
mov dword [esp + 0xb8], ecx
call fcn.00437870
add esp, 0xa0
ret
mov dword [esp + 0xb0], 0
call fcn.00437870
add esp, 0xa0
ret
mov dword [esp + 0xb0], 0
call fcn.00437870
add esp, 0xa0
ret
mov dword [esp + 0xb0], 0
call fcn.00437870
add esp, 0xa0
ret
mov dword [esp + 0xb0], 0
call fcn.00437870
add esp, 0xa0
ret
mov dword [esp + 0xb0], 0
call fcn.00437870
add esp, 0xa0
ret
mov dword [esp + 0xb0], 0
call fcn.00437870
add esp, 0xa0
ret
mov ecx, dword [esp + 0x3c]
mov edx, ecx
sub ecx, ebx
cmp edx, ecx
jb 0x56898d
mov dword [esp + 0x48], ecx
lea eax, [0x5eb740]
mov dword [esp], eax
call fcn.0040c420
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x14
lea ecx, [0x61016b]
mov dword [eax], ecx
mov ecx, dword [esp + 0x48]
mov dword [eax + 0xc], ecx
mov ecx, dword [0x7c3fa0]
test ecx, ecx
jne 0x56884e
mov ecx, dword [esp + 0x70]
jmp 0x568859
call fcn.00468400
mov ecx, dword [esp + 0x70]
mov dword [edi], ecx
mov dword [eax + 8], ecx
mov dword [esp + 0xb0], 0
lea ecx, [0x659edc]
mov dword [esp + 0xb4], ecx
mov dword [esp + 0xb8], eax
call fcn.00437870
add esp, 0xa0
ret
mov dword [esp], eax
call fcn.005658c0
mov eax, dword [esp + 0x8c]
mov dword [esp], eax
call fcn.00569810
movzx eax, byte [esp + 4]
test al, al
je 0x5688c4
mov eax, dword [esp + 0x8c]
mov edx, dword [eax + 0xc]
mov ebx, dword [eax + 8]
lea ecx, [ebx - 1]
cmp edx, ecx
jb 0x568988
mov dword [eax + 8], ecx
jmp 0x5688cb
mov eax, dword [esp + 0x8c]
mov dword [esp], eax
call fcn.00565a20
mov eax, dword [esp + 0x8c]
cmp dword [eax + 8], 1
je 0x56895a
lea eax, [0x5eb740]
mov dword [esp], eax
call fcn.0040c420
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x11
lea ecx, [0x60e8e2]
mov dword [eax], ecx
mov ecx, dword [esp + 0xa8]
mov dword [eax + 0xc], ecx
mov ecx, dword [0x7c3fa0]
test ecx, ecx
jne 0x56891e
mov ecx, dword [esp + 0xa4]
jmp 0x56892c
call fcn.00468400
mov ecx, dword [esp + 0xa4]
mov dword [edi], ecx
mov dword [eax + 8], ecx
mov dword [esp + 0xb0], 0
lea ecx, [0x659edc]
mov dword [esp + 0xb4], ecx
mov dword [esp + 0xb8], eax
call fcn.00437870
add esp, 0xa0
ret
mov eax, dword [eax + 4]
mov eax, dword [eax]
mov dword [esp + 0xb0], eax
mov dword [esp + 0xb4], 0
mov dword [esp + 0xb8], 0
call fcn.00437870
add esp, 0xa0
ret
call fcn.004684a0
call fcn.00468480
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x80], ecx
mov edx, dword [esp + 0x10]
mov dword [esp + 0x40], edx
mov ebx, dword [esp + 0x8c]
mov dword [esp], ebx
mov dword [esp + 4], eax
call fcn.00565120
mov eax, dword [esp + 0x70]
mov ecx, dword [esp + 0x3c]
mov ebx, dword [esp + 0x40]
mov edx, dword [esp + 0x80]
test ebx, ebx
je 0x568a14
mov dword [esp], edx
mov dword [esp + 4], ebx
call fcn.0056c550
mov eax, dword [esp + 0x14]
test eax, eax
je 0x568992
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0xb0], 0
mov dword [esp + 0xb4], eax
mov dword [esp + 0xb8], ecx
call fcn.00437870
add esp, 0xa0
ret
mov ecx, dword [esp + 0x8c]
mov ebp, dword [esp + 0x3c]
mov ebx, eax
movzx eax, byte [esp + 0x3b]
xor edx, edx
xor esi, esi
jmp 0x567c4d
call fcn.00467000
jmp fcn.00567990