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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x10]
cmp eax, dword [ecx + 8]
jbe 0x54d741
sub esp, 0x90
movzx eax, word [esp + 0x9c]
test ax, 2
jne 0x54d687
lea eax, [0x5d8260]
mov dword [esp], eax
call fcn.0040b8e0
mov eax, dword [esp + 4]
movzx ecx, word [esp + 0x9c]
mov word [eax], cx
mov ecx, dword [esp + 0x98]
mov dword [eax + 0x1c], ecx
mov edx, dword [0x770e60]
test edx, edx
jne 0x54d668
mov edx, dword [esp + 0x94]
mov dword [eax + 0x18], edx
mov dword [esp + 0x80], eax
mov ebx, ecx
mov ebp, edx
xor esi, esi
xor edi, edi
xor ecx, ecx
mov dword [esp + 0x84], ecx
mov ecx, ebx
jmp 0x54c8d8
mov esi, dword [esp + 0x80]
mov esi, ecx
mov edi, edx
mov dword [esp + 0x84], ebp
mov ebp, dword [esp + 0x94]
mov ecx, eax
mov edx, ebx
mov eax, dword [esp + 0x80]
mov ebx, dword [esp + 0x98]
test ecx, ecx
je 0x54d565
mov dword [esp + 0x58], ecx
mov dword [esp + 0x88], 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 0x54cc5e
xchg ebp, eax
cmp al, 0x28
xchg ebp, eax
ja 0x54caad
xchg ebp, eax
cmp al, 0x24
xchg ebp, eax
jne 0x54c971
movzx ebp, word [eax]
test bp, 0x10
je 0x54c962
mov dword [esp], eax
mov byte [esp + 4], 0xa
call fcn.00549fd0
mov eax, dword [esp + 8]
movzx ecx, word [eax + 2]
or ecx, 0x100
mov word [eax + 2], cx
mov ebx, dword [esp + 0x58]
dec ebx
mov ebp, ebx
neg ebx
sar ebx, 0x1f
and ebx, 1
mov eax, ebp
mov ebp, dword [esp + 0x88]
add ebx, ebp
movzx ecx, byte [esp + 0x3b]
xor edx, edx
xor ebp, ebp
jmp 0x54c8ad
mov dword [esp], eax
mov byte [esp + 4], 8
call fcn.00549fd0
jmp 0x54c93a
xchg ebp, eax
cmp al, 0x28
xchg ebp, eax
jne 0x54ca34
movzx ebp, word [eax]
test bp, 0x40
je 0x54c991
cmp ecx, 2
jl 0x54c991
cmp byte [edx + 1], 0x3f
je 0x54c9da
inc dword [eax + 0x14]
mov dword [esp], eax
mov byte [esp + 4], pe_nt_image_headers32
call fcn.00549fd0
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0x80]
mov edx, dword [ecx + 0x14]
mov dword [eax + 0x30], edx
mov eax, dword [esp + 0x58]
dec eax
mov edx, eax
neg eax
sar eax, 0x1f
and eax, 1
mov ebx, dword [esp + 0x88]
add ebx, eax
mov eax, edx
movzx ecx, byte [esp + 0x3b]
xor edx, edx
xor ebp, ebp
jmp 0x54c8ad
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call fcn.0054d950
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
mov ebx, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
test edx, edx
jne 0x54ca14
mov ebx, eax
xor edx, edx
xor ebp, ebp
mov eax, ecx
movzx ecx, byte [esp + 0x3b]
jmp 0x54c8ad
mov dword [esp + 0xa0], 0
mov dword [esp + 0xa4], ebx
mov dword [esp + 0xa8], ebp
add esp, 0x90
ret
mov dword [esp], edx
mov dword [esp + 4], ecx
call fcn.00551380
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 8]
mov ebx, dword [esp + 0x14]
mov ebp, dword [esp + 0x14]
mov esi, dword [esp + 0x18]
test ebx, ebx
jne 0x54ca8d
mov dword [esp + 0x44], ecx
mov dword [esp + 0x68], eax
mov eax, dword [esp + 0x80]
mov dword [esp], eax
mov dword [esp + 4], edx
call fcn.00549e40
mov eax, dword [esp + 0x44]
mov ebx, dword [esp + 0x68]
movzx ecx, byte [esp + 0x3b]
xor edx, edx
xor ebp, ebp
jmp 0x54c8ad
mov dword [esp + 0xa0], 0
mov dword [esp + 0xa4], ebp
mov dword [esp + 0xa8], esi
add esp, 0x90
ret
xchg ebp, eax
cmp al, 0x29
xchg ebp, eax
je 0x54cbf9
xchg ebp, eax
cmp al, 0x2b
xchg ebp, eax
jbe 0x54cb1d
xchg ebp, eax
cmp al, 0x2e
xchg ebp, eax
jne 0x54ca34
movzx ebp, word [eax]
test bp, 8
je 0x54cb0e
mov dword [esp], eax
mov byte [esp + 4], 6
call fcn.00549fd0
mov esi, dword [esp + 0x58]
lea eax, [esi - 1]
mov esi, eax
neg eax
sar eax, 0x1f
and eax, 1
mov ecx, esi
mov esi, dword [esp + 0x88]
lea ebx, [esi + eax]
mov eax, ecx
movzx ecx, byte [esp + 0x3b]
xor edx, edx
xor ebp, ebp
jmp 0x54c8ad
mov dword [esp], eax
mov byte [esp + 4], 5
call fcn.00549fd0
jmp 0x54cae1
xchg ebp, eax
cmp al, 0x2a
xchg ebp, eax
jne 0x54cbd0
mov ebp, 0xe
xchg ebp, eax
mov byte [esp + 0x3b], al
xchg ebp, eax
mov dword [esp], eax
xchg ebp, eax
mov byte [esp + 4], al
xchg ebp, 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 esi, ebx
neg ebx
sar ebx, 0x1f
and ebx, 1
add ebx, edx
mov dword [esp + 0x18], ebx
mov dword [esp + 0x1c], esi
mov ebx, dword [esp + 0x84]
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], edi
call fcn.0054a080
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x2c]
mov edx, dword [esp + 0x30]
mov ebx, dword [esp + 0x30]
mov ebp, dword [esp + 0x34]
test edx, edx
jne 0x54cbb0
mov ebx, eax
mov edx, dword [esp + 0x58]
mov ebp, dword [esp + 0x88]
mov eax, ecx
movzx ecx, byte [esp + 0x3b]
jmp 0x54c8ad
mov dword [esp + 0xa0], 0
mov dword [esp + 0xa4], ebx
mov dword [esp + 0xa8], ebp
add esp, 0x90
ret
xchg ebp, eax
cmp al, 0x2b
xchg ebp, eax
jne 0x54cbe1
mov ebp, 0xf
jmp 0x54cb2d
xchg ebp, eax
cmp al, 0x3f
xchg ebp, eax
jne 0x54cbf2
mov ebp, 0x10
jmp 0x54cb2d
mov ebp, esi
jmp 0x54cb2d
mov dword [esp], eax
call fcn.0054e630
mov eax, dword [esp + 4]
mov ecx, dword [esp + 4]
mov edx, dword [esp + 8]
test eax, eax
jne 0x54cc3e
mov esi, dword [esp + 0x58]
lea eax, [esi - 1]
mov esi, eax
neg eax
sar eax, 0x1f
and eax, 1
mov ecx, esi
mov esi, dword [esp + 0x88]
lea ebx, [esi + eax]
mov eax, ecx
movzx ecx, byte [esp + 0x3b]
xor edx, edx
xor ebp, ebp
jmp 0x54c8ad
mov dword [esp + 0xa0], 0
mov dword [esp + 0xa4], ecx
mov dword [esp + 0xa8], edx
add esp, 0x90
ret
xchg ebp, eax
cmp al, 0x5c
xchg ebp, eax
ja 0x54d2de
xchg ebp, eax
cmp al, 0x3f
xchg ebp, eax
je 0x54cb1d
xchg ebp, eax
cmp al, 0x5b
xchg ebp, eax
je 0x54d284
xchg ebp, eax
cmp al, 0x5c
xchg ebp, eax
jne 0x54ca34
movzx ebp, word [eax]
test bp, 0x40
je 0x54ccc9
cmp ecx, 2
jl 0x54ccc9
movzx ebp, byte [edx + 1]
xchg ebp, eax
cmp al, 0x43
xchg ebp, eax
ja 0x54d0c6
xchg ebp, eax
cmp al, 0x41
xchg ebp, eax
je 0x54d08e
xchg ebp, eax
cmp al, 0x42
xchg ebp, eax
je 0x54d056
xchg ebp, eax
cmp al, 0x43
xchg ebp, eax
je 0x54cfdf
nop
mov edi, dword [eax + 0x10]
lea ebp, [eax + 0x10]
mov dword [esp + 0x8c], ebp
test edi, edi
je 0x54cfb3
mov dword [esp + 0x78], edi
mov ebx, dword [0x770e60]
mov esi, dword [edi + 0x10]
test ebx, ebx
jne 0x54cf7a
mov dword [eax + 0x10], esi
mov ebx, eax
xor eax, eax
call fcn.0045e1f1
mov eax, dword [esp + 0x78]
mov dword [esp + 0x7c], eax
mov byte [eax], 4
movzx ecx, word [ebx]
mov word [eax + 2], cx
mov ecx, dword [esp + 0x58]
cmp ecx, 2
jl 0x54cd35
movzx esi, byte [edx + 1]
xchg esi, eax
cmp al, 0x70
xchg esi, eax
je 0x54ce96
xchg esi, eax
cmp al, 0x50
xchg esi, eax
je 0x54ce96
mov dword [esp], ebx
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
lea ebp, [eax + 0x20]
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], 0
mov dword [esp + 0x14], 2
call fcn.0054eef0
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0x18]
mov ebp, dword [esp + 0x20]
mov esi, dword [esp + 0x1c]
test edx, edx
je 0x54cdcc
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x64], eax
mov edx, dword [esp + 0x7c]
mov dword [edx + 0x18], esi
mov dword [edx + 0x1c], ebp
mov ebp, dword [0x770e60]
test ebp, ebp
jne 0x54cdc0
mov dword [edx + 0x14], ebx
mov eax, dword [esp + 0x80]
mov dword [esp], eax
mov dword [esp + 4], edx
call fcn.005498c0
mov eax, dword [esp + 0x3c]
mov ebx, dword [esp + 0x64]
movzx ecx, byte [esp + 0x3b]
xor edx, edx
xor ebp, ebp
jmp 0x54c8ad
lea edi, [edx + 0x14]
mov eax, ebx
call fcn.0045df70
jmp 0x54cd97
nop
mov ecx, dword [0x770e60]
mov edx, dword [esp + 0x80]
mov eax, dword [edx + 0x10]
test ecx, ecx
jne 0x54ce77
mov ecx, dword [esp + 0x7c]
mov dword [ecx + 0x10], eax
mov dword [edx + 0x10], ecx
mov dword [esp], edx
mov eax, dword [esp + 0x88]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x58]
mov dword [esp + 8], eax
call fcn.0054e830
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0xc]
mov ebx, dword [esp + 0x18]
mov ebp, dword [esp + 0x18]
mov esi, dword [esp + 0x1c]
test ebx, ebx
jne 0x54ce57
mov dword [esp + 0x60], eax
mov dword [esp + 0x40], ecx
mov eax, dword [esp + 0x80]
mov dword [esp], eax
mov dword [esp + 4], edx
call fcn.00549e40
mov eax, dword [esp + 0x40]
mov ebx, dword [esp + 0x60]
movzx ecx, byte [esp + 0x3b]
xor edx, edx
xor ebp, ebp
jmp 0x54c8ad
mov dword [esp + 0xa0], 0
mov dword [esp + 0xa4], ebp
mov dword [esp + 0xa8], esi
add esp, 0x90
ret
mov ecx, dword [esp + 0x7c]
lea edi, [ecx + 0x10]
call fcn.0045df70
mov edi, dword [esp + 0x8c]
mov eax, ecx
call fcn.0045df70
jmp 0x54cdef
mov dword [esp], ebx
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
lea ebp, [eax + 0x20]
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], 0
mov dword [esp + 0x14], 2
call fcn.0054f470
mov eax, dword [esp + 0x24]
mov dword [esp + 0x74], eax
mov ecx, dword [esp + 0x28]
mov dword [esp + 0x4c], ecx
mov edx, dword [esp + 0x2c]
mov ebx, dword [esp + 0x2c]
mov ebp, dword [esp + 0x30]
mov esi, dword [esp + 0x18]
mov edi, dword [esp + 0x18]
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x1c]
test edx, edx
jne 0x54cf5a
test esi, esi
je 0x54cf3f
mov edx, dword [esp + 0x7c]
mov dword [edx + 0x18], ecx
mov dword [edx + 0x1c], eax
mov ecx, dword [0x770e60]
test ecx, ecx
jne 0x54cf31
mov dword [edx + 0x14], edi
mov eax, dword [esp + 0x80]
mov dword [esp], eax
mov dword [esp + 4], edx
call fcn.005498c0
mov eax, dword [esp + 0x4c]
mov ebx, dword [esp + 0x74]
movzx ecx, byte [esp + 0x3b]
xor edx, edx
xor ebp, ebp
jmp 0x54c8ad
lea ecx, [edx + 0x14]
mov eax, edi
mov edi, ecx
call fcn.0045df70
jmp 0x54cf08
mov eax, dword [esp + 0x7c]
mov ecx, dword [esp + 0x58]
mov edx, dword [esp + 0x88]
mov ebx, dword [esp + 0x80]
jmp 0x54cd35
mov dword [esp + 0xa0], 0
mov dword [esp + 0xa4], ebx
mov dword [esp + 0xa8], ebp
add esp, 0x90
ret
mov eax, edi
mov edi, ebp
mov ecx, eax
mov eax, esi
call fcn.0045df70
lea edx, [0x5dd2a0]
mov dword [esp], edx
mov dword [esp + 4], ecx
call fcn.004108b0
mov edx, dword [esp + 0x88]
mov ebx, dword [esp + 0x80]
mov ebp, dword [esp + 0x8c]
jmp 0x54cd00
lea eax, [0x5dd2a0]
mov dword [esp], eax
call fcn.0040b8e0
mov eax, dword [esp + 4]
mov edx, dword [esp + 0x88]
mov ebx, dword [esp + 0x80]
mov ebp, dword [esp + 0x8c]
jmp 0x54cd04
lea eax, [0x5cac40]
mov dword [esp], eax
call fcn.0040b8e0
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x17
lea ecx, [0x5f245d]
mov dword [eax], ecx
mov dword [eax + 0xc], 2
mov ecx, dword [0x770e60]
test ecx, ecx
jne 0x54d041
mov ecx, dword [esp + 0x88]
mov dword [eax + 8], ecx
mov dword [esp + 0xa0], 0
lea ecx, [0x63a184]
mov dword [esp + 0xa4], ecx
mov dword [esp + 0xa8], eax
add esp, 0x90
ret
lea edi, [eax + 8]
mov ecx, eax
mov eax, dword [esp + 0x88]
call fcn.0045df70
mov eax, ecx
jmp 0x54d01b
mov dword [esp], eax
mov byte [esp + 4], 0xc
call fcn.00549fd0
mov eax, dword [esp + 0x58]
add eax, 0xfffffffe
mov ecx, eax
neg eax
sar eax, 0x1f
and eax, 2
mov edx, dword [esp + 0x88]
lea ebx, [edx + eax]
mov eax, ecx
movzx ecx, byte [esp + 0x3b]
xor edx, edx
xor ebp, ebp
jmp 0x54c8ad
mov dword [esp], eax
mov byte [esp + 4], 9
call fcn.00549fd0
mov eax, dword [esp + 0x58]
add eax, 0xfffffffe
mov ecx, eax
neg eax
sar eax, 0x1f
and eax, 2
mov edx, dword [esp + 0x88]
lea ebx, [edx + eax]
mov eax, ecx
movzx ecx, byte [esp + 0x3b]
xor edx, edx
xor ebp, ebp
jmp 0x54c8ad
xchg ebp, eax
cmp al, 0x51
xchg ebp, eax
je 0x54d153
xchg ebp, eax
cmp al, 0x62
xchg ebp, eax
je 0x54d11b
xchg ebp, eax
cmp al, 0x7a
xchg ebp, eax
jne 0x54ccc9
mov dword [esp], eax
mov byte [esp + 4], 0xa
call fcn.00549fd0
mov eax, dword [esp + 0x58]
add eax, 0xfffffffe
mov ecx, eax
neg eax
sar eax, 0x1f
and eax, 2
mov edx, dword [esp + 0x88]
lea ebx, [edx + eax]
mov eax, ecx
movzx ecx, byte [esp + 0x3b]
xor edx, edx
xor ebp, ebp
jmp 0x54c8ad
mov dword [esp], eax
mov byte [esp + 4], 0xb
call fcn.00549fd0
mov eax, dword [esp + 0x58]
add eax, 0xfffffffe
mov ecx, eax
neg eax
sar eax, 0x1f
and eax, 2
mov edx, dword [esp + 0x88]
lea ebx, [edx + eax]
mov eax, ecx
movzx ecx, byte [esp + 0x3b]
xor edx, edx
xor ebp, ebp
jmp 0x54c8ad
mov dword [esp], edx
mov dword [esp + 4], ecx
lea eax, [0x5eb387]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 2
call fcn.004c9ec0
mov ecx, dword [esp + 0x10]
test ecx, ecx
jge 0x54d22a
mov ecx, dword [esp + 0x58]
add ecx, 0xfffffffe
mov edx, ecx
neg ecx
sar ecx, 0x1f
and ecx, 2
mov ebx, dword [esp + 0x88]
add ecx, ebx
xor eax, eax
xor ebx, ebx
mov dword [esp + 0x6c], ebx
mov dword [esp + 0x48], eax
jmp 0x54d1d0
mov dword [esp + 0x70], eax
mov dword [esp + 0x50], ecx
mov eax, dword [esp + 0x80]
mov dword [esp], eax
mov dword [esp + 4], edx
call fcn.00549e40
mov eax, dword [esp + 0x48]
mov ebx, dword [esp + 0x6c]
mov edx, dword [esp + 0x50]
mov ecx, dword [esp + 0x70]
test edx, edx
je 0x54d21c
mov dword [esp], ecx
mov dword [esp + 4], edx
call fcn.00551380
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 8]
mov ebx, dword [esp + 0x14]
mov ebp, dword [esp + 0x14]
mov esi, dword [esp + 0x18]
test ebx, ebx
je 0x54d1a5
mov dword [esp + 0xa0], 0
mov dword [esp + 0xa4], ebp
mov dword [esp + 0xa8], esi
add esp, 0x90
ret
movzx ecx, byte [esp + 0x3b]
xor edx, edx
xor ebp, ebp
jmp 0x54c8ad
mov edx, dword [esp + 0x58]
cmp ecx, edx
ja 0x54d736
cmp ecx, 2
jb 0x54d72c
lea ebx, [ecx - 2]
mov ebp, ebx
neg ebx
sar ebx, 0x1f
and ebx, 2
mov esi, dword [esp + 0x88]
add ebx, esi
lea eax, [ecx + 2]
cmp eax, edx
ja 0x54d725
sub edx, ecx
mov ecx, ebp
lea ebp, [edx - 2]
mov edx, ebp
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and eax, ebp
lea ebp, [eax + esi]
mov eax, edx
mov edx, ecx
mov ecx, ebx
mov ebx, ebp
jmp 0x54d19b
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call fcn.0054fbb0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
mov ebx, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
test edx, edx
jne 0x54d2be
mov ebx, eax
xor edx, edx
xor ebp, ebp
mov eax, ecx
movzx ecx, byte [esp + 0x3b]
jmp 0x54c8ad
mov dword [esp + 0xa0], 0
mov dword [esp + 0xa4], ebx
mov dword [esp + 0xa8], ebp
add esp, 0x90
ret
xchg ebp, eax
cmp al, 0x5e
xchg ebp, eax
jne 0x54d338
movzx ebp, word [eax]
test bp, 0x10
je 0x54d329
mov dword [esp], eax
mov byte [esp + 4], 9
call fcn.00549fd0
mov esi, dword [esp + 0x58]
lea eax, [esi - 1]
mov esi, eax
neg eax
sar eax, 0x1f
and eax, 1
mov ecx, esi
mov esi, dword [esp + 0x88]
lea ebx, [esi + eax]
mov eax, ecx
movzx ecx, byte [esp + 0x3b]
xor edx, edx
xor ebp, ebp
jmp 0x54c8ad
mov dword [esp], eax
mov byte [esp + 4], 7
call fcn.00549fd0
jmp 0x54d2fc
xchg ebp, eax
cmp al, 0x7b
xchg ebp, eax
je 0x54d3af
xchg ebp, eax
cmp al, 0x7c
xchg ebp, eax
jne 0x54ca34
mov dword [esp], eax
call fcn.0054e070
mov eax, dword [esp + 4]
mov ecx, dword [esp + 4]
mov edx, dword [esp + 8]
test eax, eax
jne 0x54d38f
mov esi, dword [esp + 0x58]
lea eax, [esi - 1]
mov esi, eax
neg eax
sar eax, 0x1f
and eax, 1
mov ecx, esi
mov esi, dword [esp + 0x88]
lea ebx, [esi + eax]
mov eax, ecx
movzx ecx, byte [esp + 0x3b]
xor edx, edx
xor ebp, ebp
jmp 0x54c8ad
mov dword [esp + 0xa0], 0
mov dword [esp + 0xa4], ecx
mov dword [esp + 0xa8], edx
add esp, 0x90
ret
mov dword [esp + 0x54], edi
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call fcn.0054d750
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
movzx edx, byte [esp + 0x1c]
mov ebx, dword [esp + 0x18]
mov ebp, dword [esp + 0x14]
test dl, dl
jne 0x54d41c
mov eax, dword [esp + 0x80]
mov dword [esp], eax
mov dword [esp + 4], 0x7b
call fcn.00549e40
mov eax, dword [esp + 0x58]
dec eax
mov ecx, eax
neg eax
sar eax, 0x1f
and eax, 1
mov edx, dword [esp + 0x88]
lea ebx, [edx + eax]
mov eax, ecx
mov ecx, 0x11
xor edx, edx
xor ebp, ebp
jmp 0x54c8ad
cmp ecx, 0x3e8
ja 0x54d4da
cmp eax, 0x3e8
jg 0x54d4da
test eax, eax
jl 0x54d43f
cmp ecx, eax
jg 0x54d4da
mov edx, dword [esp + 0x80]
mov dword [esp], edx
mov byte [esp + 4], 0x11
mov dword [esp + 8], ecx
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x88]
mov dword [esp + 0x10], eax
mov ecx, dword [esp + 0x58]
mov dword [esp + 0x14], ecx
mov dword [esp + 0x18], ebp
mov dword [esp + 0x1c], ebx
mov ebx, dword [esp + 0x84]
mov dword [esp + 0x20], ebx
mov ebx, dword [esp + 0x54]
mov dword [esp + 0x24], ebx
call fcn.0054a080
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x2c]
mov edx, dword [esp + 0x30]
mov ebx, dword [esp + 0x30]
mov ebp, dword [esp + 0x34]
test edx, edx
jne 0x54d4ba
mov ebx, eax
mov edx, dword [esp + 0x58]
mov ebp, dword [esp + 0x88]
mov eax, ecx
mov ecx, 0x11
jmp 0x54c8ad
mov dword [esp + 0xa0], 0
mov dword [esp + 0xa4], ebx
mov dword [esp + 0xa8], ebp
add esp, 0x90
ret
mov ecx, dword [esp + 0x58]
mov edx, ecx
sub ecx, ebx
cmp ecx, edx
ja 0x54d73b
mov dword [esp + 0x5c], ecx
lea eax, [0x5cac40]
mov dword [esp], eax
call fcn.0040b8e0
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x14
lea ecx, [0x5f0cdb]
mov dword [eax], ecx
mov ecx, dword [esp + 0x5c]
mov dword [eax + 0xc], ecx
mov ecx, dword [0x770e60]
test ecx, ecx
jne 0x54d550
mov ecx, dword [esp + 0x88]
mov dword [eax + 8], ecx
mov dword [esp + 0xa0], 0
lea ecx, [0x63a184]
mov dword [esp + 0xa4], ecx
mov dword [esp + 0xa8], eax
add esp, 0x90
ret
lea edi, [eax + 8]
mov ecx, eax
mov eax, dword [esp + 0x88]
call fcn.0045df70
mov eax, ecx
jmp 0x54d52a
mov dword [esp], eax
call fcn.0054a5d0
mov eax, dword [esp + 0x80]
mov dword [esp], eax
call fcn.0054e3d0
movzx eax, byte [esp + 4]
test al, al
je 0x54d65c
mov eax, dword [esp + 0x80]
mov edx, dword [eax + 0xc]
mov ebx, dword [eax + 8]
lea ecx, [ebx - 1]
cmp ecx, edx
ja 0x54d720
mov dword [eax + 8], ecx
mov dword [esp], eax
call fcn.0054a740
mov eax, dword [esp + 0x80]
mov ecx, dword [eax + 4]
cmp dword [eax + 8], 1
je 0x54d636
lea eax, [0x5cac40]
mov dword [esp], eax
call fcn.0040b8e0
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x11
lea ecx, [0x5ef672]
mov dword [eax], ecx
mov ecx, dword [esp + 0x98]
mov dword [eax + 0xc], ecx
mov ecx, dword [0x770e60]
test ecx, ecx
jne 0x54d621
mov ecx, dword [esp + 0x94]
mov dword [eax + 8], ecx
mov dword [esp + 0xa0], 0
lea ecx, [0x63a184]
mov dword [esp + 0xa4], ecx
mov dword [esp + 0xa8], eax
add esp, 0x90
ret
lea edi, [eax + 8]
mov ecx, eax
mov eax, dword [esp + 0x94]
call fcn.0045df70
mov eax, ecx
jmp 0x54d5fb
mov eax, dword [ecx]
mov dword [esp + 0xa0], eax
mov dword [esp + 0xa4], 0
mov dword [esp + 0xa8], 0
add esp, 0x90
ret
mov eax, dword [esp + 0x80]
jmp 0x54d5a4
lea edi, [eax + 0x18]
mov edx, eax
mov eax, dword [esp + 0x94]
call fcn.0045df70
mov eax, edx
mov edx, dword [esp + 0x94]
jmp 0x54c891
mov eax, dword [esp + 0x94]
mov dword [esp], eax
mov ecx, dword [esp + 0x98]
mov dword [esp + 4], ecx
call fcn.00551280
mov eax, dword [esp + 8]
mov ecx, dword [esp + 8]
mov edx, dword [esp + 0xc]
test eax, eax
je 0x54d6d1
mov dword [esp + 0xa0], 0
mov dword [esp + 0xa4], ecx
mov dword [esp + 0xa8], edx
add esp, 0x90
ret
mov eax, dword [esp + 0x94]
mov dword [esp], eax
mov eax, dword [esp + 0x98]
mov dword [esp + 4], eax
movzx eax, word [esp + 0x9c]
mov word [esp + 8], ax
call fcn.0054c6e0
mov eax, dword [esp + 0xc]
mov dword [esp + 0xa0], eax
mov dword [esp + 0xa4], 0
mov dword [esp + 0xa8], 0
add esp, 0x90
ret
call fcn.0045e030
mov ecx, edx
call fcn.0045e050
mov eax, 2
call fcn.0045e050
call fcn.0045e010
call fcn.0045e010
nop
call fcn.0045ca10
jmp fcn.0054c820