Function at 0x57add0
Capabilities:
Parse credit card information

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffffc4
push ebx
push esi
push edi
mov esi, dword [ebp + 0xc]
lea edi, [ebp - 0x1c]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov dword [ebp - 8], ecx
mov ebx, edx
mov dword [ebp - 4], eax
mov eax, ebx
sub al, 7
je 0x57adfb
add al, 0xfd
sub al, 4
jae 0x57aecb
mov esi, 0x42
cmp bl, 0xa
jne 0x57ae26
add esi, 0xcf
push esi
lea eax, [ebp - 0x2c]
push eax
mov ecx, 0xc9
mov edx, 0xcf
mov eax, 0x97
call fcn.0040be84
jmp 0x57aea5
cmp bl, 0xb
jne 0x57ae50
mov eax, esi
add eax, eax
add eax, 0xcf
push eax
lea eax, [ebp - 0x2c]
push eax
lea edx, [esi + 0xcf]
mov ecx, 0x97
mov eax, 0x65
call fcn.0040be84
jmp 0x57aea5
cmp bl, 0xc
jne 0x57ae7a
mov eax, esi
add eax, eax
add eax, 0xcf
push eax
lea eax, [ebp - 0x2c]
push eax
lea edx, [esi + 0xcf]
mov ecx, 0xc9
mov eax, 0x97
call fcn.0040be84
jmp 0x57aea5
cmp bl, 0xd
jne 0x57aea5
lea eax, [esi + esi*2]
add eax, 0xcf
push eax
lea eax, [ebp - 0x2c]
push eax
mov edx, esi
add edx, edx
add edx, 0xcf
mov ecx, 0x97
mov eax, 0x65
call fcn.0040be84
lea eax, [ebp - 0x1c]
push eax
push 2
push 2
push 0xff
mov eax, dword [ebp - 4]
mov eax, dword [eax + 4]
mov eax, dword [eax + 4]
mov ecx, dword [ebp - 8]
lea edx, [ebp - 0x2c]
call fcn.00579aec
jmp 0x57c039
mov eax, ebx
test al, al
je 0x57aedb
add al, 0xfe
sub al, 5
jae 0x57afb7
mov esi, 0x16
cmp bl, 2
jne 0x57af04
mov eax, esi
add eax, eax
push eax
lea eax, [ebp - 0x2c]
push eax
mov ecx, 0xc7
mov edx, esi
mov eax, 0x63
call fcn.0040be84
jmp 0x57af91
cmp bl, 3
jne 0x57af26
lea eax, [esi + esi*2]
push eax
lea eax, [ebp - 0x2c]
push eax
mov edx, esi
add edx, edx
mov ecx, 0xc7
mov eax, 0x63
call fcn.0040be84
jmp 0x57af91
cmp bl, 4
jne 0x57af4a
mov eax, esi
add eax, eax
add eax, eax
push eax
lea eax, [ebp - 0x2c]
push eax
lea edx, [esi + esi*2]
mov ecx, 0xc7
mov eax, 0x63
call fcn.0040be84
jmp 0x57af91
cmp bl, 5
jne 0x57af6e
lea eax, [esi + esi*4]
push eax
lea eax, [ebp - 0x2c]
push eax
mov edx, esi
add edx, edx
add edx, edx
mov ecx, 0xc7
mov eax, 0x63
call fcn.0040be84
jmp 0x57af91
cmp bl, 6
jne 0x57af91
mov eax, esi
add eax, eax
lea eax, [eax + eax*2]
push eax
lea eax, [ebp - 0x2c]
push eax
lea edx, [esi + esi*4]
mov ecx, 0xc7
mov eax, 0x63
call fcn.0040be84
lea eax, [ebp - 0x1c]
push eax
push 2
push 2
push 0xff
mov eax, dword [ebp - 4]
mov eax, dword [eax + 4]
mov eax, dword [eax + 4]
mov ecx, dword [ebp - 8]
lea edx, [ebp - 0x2c]
call fcn.00579aec
jmp 0x57c039
cmp bl, 0xe
jne 0x57b00f
push 0x82
lea eax, [ebp - 0x2c]
push eax
mov ecx, 0xca
mov edx, 0x6f
mov eax, 0xc8
call fcn.0040be84
lea esi, [ebp - 0x1c]
lea edi, [ebp - 0x3c]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x3c]
add eax, 2
mov dword [ebp - 0x34], eax
inc dword [ebp - 0x38]
dec dword [ebp - 0x30]
lea eax, [ebp - 0x3c]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 4]
mov eax, dword [eax + 4]
mov ecx, dword [ebp - 8]
lea edx, [ebp - 0x2c]
call fcn.00579ab8
jmp 0x57c039
cmp bl, 0x18
jne 0x57b141
push 0xce
lea eax, [ebp - 0x2c]
push eax
mov ecx, 0x97
mov edx, 0xcc
mov eax, 0x65
call fcn.0040be84
lea esi, [ebp - 0x1c]
lea edi, [ebp - 0x3c]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x38]
add eax, 2
mov dword [ebp - 0x30], eax
lea eax, [ebp - 0x3c]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 4]
mov eax, dword [eax + 4]
mov ecx, dword [ebp - 8]
lea edx, [ebp - 0x2c]
call fcn.00579ab8
mov esi, 0x42
lea eax, [esi + esi*2]
add eax, 0xcf
push eax
lea eax, [ebp - 0x2c]
push eax
mov edx, esi
add edx, edx
add edx, 0xcf
add edx, dword [ebp - 0x18]
add edx, 2
mov ecx, 0xc9
mov eax, 0x97
call fcn.0040be84
mov eax, dword [ebp - 0x18]
add eax, 2
mov edx, esi
sub edx, eax
push edx
lea eax, [ebp - 0x3c]
push eax
mov ecx, 0x32
xor edx, edx
xor eax, eax
call fcn.0040be84
mov dl, 1
mov eax, dword [0x578cf8]
call fcn.0057a0b0
mov dword [ebp - 0xc], eax
xor eax, eax
push ebp
push 0x57b13a
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 0x18]
add eax, 2
mov ecx, esi
sub ecx, eax
mov edx, 0x32
mov eax, dword [ebp - 0xc]
mov ebx, dword [eax]
call dword [ebx + 0x6c]
lea eax, [ebp - 0x3c]
push eax
mov eax, dword [ebp - 0xc]
call fcn.00463698
mov ecx, eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 4]
mov eax, dword [eax + 4]
lea edx, [ebp - 0x2c]
call fcn.00579ab8
lea esi, [ebp - 0x1c]
lea edi, [ebp - 0x2c]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
dec dword [ebp - 0x2c]
inc dword [ebp - 0x24]
movzx eax, byte [ebp + 8]
push eax
lea ecx, [ebp - 0x2c]
mov edx, dword [ebp - 8]
mov eax, dword [ebp - 0xc]
call fcn.0057a084
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x57c039
mov eax, dword [ebp - 0xc]
call fcn.00405630
ret
cmp bl, 9
jne 0x57b197
mov esi, 0x42
lea eax, [esi + esi*2]
add eax, 0xcf
push eax
lea eax, [ebp - 0x2c]
push eax
mov edx, esi
add edx, edx
add edx, 0xcf
mov ecx, 0xc9
mov eax, 0x97
call fcn.0040be84
lea eax, [ebp - 0x1c]
push eax
push 2
push 2
push 0xff
mov eax, dword [ebp - 4]
mov eax, dword [eax + 4]
mov eax, dword [eax + 4]
mov ecx, dword [ebp - 8]
lea edx, [ebp - 0x2c]
call fcn.00579aec
jmp 0x57c039
cmp bl, 0x1c
jne 0x57b1ea
mov esi, 0x42
mov eax, esi
add eax, eax
add eax, 0xcf
push eax
lea eax, [ebp - 0x2c]
push eax
lea edx, [esi + 0xcf]
mov ecx, 0xc9
mov eax, 0x97
call fcn.0040be84
lea eax, [ebp - 0x1c]
push eax
push 2
push 2
push 0xff
mov eax, dword [ebp - 4]
mov eax, dword [eax + 4]
mov eax, dword [eax + 4]
mov ecx, dword [ebp - 8]
lea edx, [ebp - 0x2c]
call fcn.00579aec
jmp 0x57c039
cmp bl, 0x1d
jne 0x57b240
mov esi, 0x42
lea eax, [esi + esi*2]
add eax, 0xcf
push eax
lea eax, [ebp - 0x2c]
push eax
mov edx, esi
add edx, edx
add edx, 0xcf
mov ecx, 0x97
mov eax, 0x65
call fcn.0040be84
lea eax, [ebp - 0x1c]
push eax
push 2
push 2
push 0xff
mov eax, dword [ebp - 4]
mov eax, dword [eax + 4]
mov eax, dword [eax + 4]
mov ecx, dword [ebp - 8]
lea edx, [ebp - 0x2c]
call fcn.00579aec
jmp 0x57c039
mov eax, ebx
add al, 0xe6
sub al, 2
jae 0x57b3d5
push 0xce
lea eax, [ebp - 0x2c]
push eax
mov ecx, 0x97
mov edx, 0xcc
mov eax, 0x65
call fcn.0040be84
lea esi, [ebp - 0x1c]
lea edi, [ebp - 0x3c]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x38]
add eax, 2
mov dword [ebp - 0x30], eax
lea eax, [ebp - 0x3c]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 4]
mov eax, dword [eax + 4]
mov ecx, dword [ebp - 8]
lea edx, [ebp - 0x2c]
call fcn.00579ab8
mov esi, 0x42
cmp bl, 0x1a
jne 0x57b2c6
lea eax, [esi + 0xcf]
push eax
lea eax, [ebp - 0x2c]
push eax
mov edx, dword [ebp - 0x18]
add edx, 0xcf
add edx, 2
mov ecx, 0xc9
mov eax, 0x97
call fcn.0040be84
jmp 0x57b321
cmp bl, 0x1c
jne 0x57b2f8
mov eax, esi
add eax, eax
add eax, 0xcf
push eax
lea eax, [ebp - 0x2c]
push eax
mov edx, dword [ebp - 0x18]
add edx, 0xcf
add edx, 2
add edx, esi
mov ecx, 0xc9
mov eax, 0x97
call fcn.0040be84
jmp 0x57b321
mov eax, esi
add eax, eax
add eax, 0xcf
push eax
lea eax, [ebp - 0x2c]
push eax
lea edx, [esi + 0xcf]
add edx, dword [ebp - 0x18]
add edx, 2
mov ecx, 0x97
mov eax, 0x65
call fcn.0040be84
mov eax, dword [ebp - 0x18]
add eax, 2
mov edx, esi
sub edx, eax
push edx
lea eax, [ebp - 0x3c]
push eax
mov ecx, 0x32
xor edx, edx
xor eax, eax
call fcn.0040be84
mov dl, 1
mov eax, dword [0x578cf8]
call fcn.0057a0b0
mov dword [ebp - 0xc], eax
xor eax, eax
push ebp
push 0x57b3ce
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 0x18]
add eax, 2
mov ecx, esi
sub ecx, eax
mov edx, 0x32
mov eax, dword [ebp - 0xc]
mov ebx, dword [eax]
call dword [ebx + 0x6c]
lea eax, [ebp - 0x3c]
push eax
mov eax, dword [ebp - 0xc]
call fcn.00463698
mov ecx, eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 4]
mov eax, dword [eax + 4]
lea edx, [ebp - 0x2c]
call fcn.00579ab8
lea esi, [ebp - 0x1c]
lea edi, [ebp - 0x2c]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
add dword [ebp - 0x28], 2
dec dword [ebp - 0x2c]
inc dword [ebp - 0x24]
movzx eax, byte [ebp + 8]
push eax
lea ecx, [ebp - 0x2c]
mov edx, dword [ebp - 8]
mov eax, dword [ebp - 0xc]
call fcn.0057a084
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x57c039
mov eax, dword [ebp - 0xc]
call fcn.00405630
ret
mov eax, ebx
sub al, 0x28
je 0x57b3eb
sub al, 6
je 0x57b3eb
sub al, 0xa
je 0x57b3eb
sub al, 6
jne 0x57b47f
cmp bl, 0x28
jne 0x57b406
push 0x16
lea eax, [ebp - 0x2c]
push eax
mov ecx, 0x16
xor edx, edx
xor eax, eax
call fcn.0040be84
jmp 0x57b459
cmp bl, 0x2e
jne 0x57b424
push 0x16
lea eax, [ebp - 0x2c]
push eax
mov ecx, 0x2e
xor edx, edx
mov eax, 0x16
call fcn.0040be84
jmp 0x57b459
cmp bl, 0x38
jne 0x57b442
push 0x16
lea eax, [ebp - 0x2c]
push eax
mov ecx, 0x46
xor edx, edx
mov eax, 0x2f
call fcn.0040be84
jmp 0x57b459
push 0x16
lea eax, [ebp - 0x2c]
push eax
mov ecx, 0x5f
xor edx, edx
mov eax, 0x47
call fcn.0040be84
lea eax, [ebp - 0x1c]
push eax
push 2
push 2
push 0xff
mov eax, dword [ebp - 4]
mov eax, dword [eax + 4]
mov eax, dword [eax + 4]
mov ecx, dword [ebp - 8]
lea edx, [ebp - 0x2c]
call fcn.00579aec
jmp 0x57c039
mov eax, ebx
sub al, 0x29
je 0x57b495
sub al, 6
je 0x57b495
sub al, 0xa
je 0x57b495
sub al, 6
jne 0x57b535
cmp bl, 0x29
jne 0x57b4b3
push 0x2c
lea eax, [ebp - 0x2c]
push eax
mov ecx, 0x16
mov edx, 0x16
xor eax, eax
call fcn.0040be84
jmp 0x57b50f
cmp bl, 0x2f
jne 0x57b4d4
push 0x2c
lea eax, [ebp - 0x2c]
push eax
mov ecx, 0x2e
mov edx, 0x16
mov eax, 0x16
call fcn.0040be84
jmp 0x57b50f
cmp bl, 0x39
jne 0x57b4f5
push 0x2c
lea eax, [ebp - 0x2c]
push eax
mov ecx, 0x46
mov edx, 0x16
mov eax, 0x2f
call fcn.0040be84
jmp 0x57b50f
push 0x2c
lea eax, [ebp - 0x2c]
push eax
mov ecx, 0x5f
mov edx, 0x16
mov eax, 0x47
call fcn.0040be84
lea eax, [ebp - 0x1c]
push eax
push 2
push 2
push 0xff
mov eax, dword [ebp - 4]
mov eax, dword [eax + 4]
mov eax, dword [eax + 4]
mov ecx, dword [ebp - 8]
lea edx, [ebp - 0x2c]
call fcn.00579aec
jmp 0x57c039
mov eax, ebx
sub al, 0x2a
je 0x57b54b
sub al, 6
je 0x57b54b
sub al, 0xa
je 0x57b54b
sub al, 6
jne 0x57b5eb
cmp bl, 0x2a
jne 0x57b569
push 0x42
lea eax, [ebp - 0x2c]
push eax
mov ecx, 0x16
mov edx, 0x2c
xor eax, eax
call fcn.0040be84
jmp 0x57b5c5
cmp bl, 0x30
jne 0x57b58a
push 0x42
lea eax, [ebp - 0x2c]
push eax
mov ecx, 0x2e
mov edx, 0x2c
mov eax, 0x16
call fcn.0040be84
jmp 0x57b5c5
cmp bl, 0x3a
jne 0x57b5ab
push 0x42
lea eax, [ebp - 0x2c]
push eax
mov ecx, 0x46
mov edx, 0x2c
mov eax, 0x2f
call fcn.0040be84
jmp 0x57b5c5
push 0x42
lea eax, [ebp - 0x2c]
push eax
mov ecx, 0x5f
mov edx, 0x2c
mov eax, 0x47
call fcn.0040be84
lea eax, [ebp - 0x1c]
push eax
push 2
push 2
push 0xff
mov eax, dword [ebp - 4]
mov eax, dword [eax + 4]
mov eax, dword [eax + 4]
mov ecx, dword [ebp - 8]
lea edx, [ebp - 0x2c]
call fcn.00579aec
jmp 0x57c039
mov eax, ebx
sub al, 0x2b
je 0x57b601
sub al, 6
je 0x57b601
sub al, 0xa
je 0x57b601
sub al, 6
jne 0x57b6a1
cmp bl, 0x2b
jne 0x57b61f
push 0x58
lea eax, [ebp - 0x2c]
push eax
mov ecx, 0x16
mov edx, 0x42
xor eax, eax
call fcn.0040be84
jmp 0x57b67b
cmp bl, 0x31
jne 0x57b640
push 0x58
lea eax, [ebp - 0x2c]
push eax
mov ecx, 0x2e
mov edx, 0x42
mov eax, 0x16
call fcn.0040be84
jmp 0x57b67b
cmp bl, 0x3b
jne 0x57b661
push 0x58
lea eax, [ebp - 0x2c]
push eax
mov ecx, 0x46
mov edx, 0x42
mov eax, 0x2f
call fcn.0040be84
jmp 0x57b67b
push 0x58
lea eax, [ebp - 0x2c]
push eax
mov ecx, 0x5f
mov edx, 0x42
mov eax, 0x47
call fcn.0040be84
lea eax, [ebp - 0x1c]
push eax
push 2
push 2
push 0xff
mov eax, dword [ebp - 4]
mov eax, dword [eax + 4]
mov eax, dword [eax + 4]
mov ecx, dword [ebp - 8]
lea edx, [ebp - 0x2c]
call fcn.00579aec
jmp 0x57c039
mov eax, ebx
sub al, 0x2c
je 0x57b6b7
sub al, 6
je 0x57b6b7
sub al, 0xa
je 0x57b6b7
sub al, 6
jne 0x57b757
cmp bl, 0x2c
jne 0x57b6d5
push 0x6e
lea eax, [ebp - 0x2c]
push eax
mov ecx, 0x16
mov edx, 0x58
xor eax, eax
call fcn.0040be84
jmp 0x57b731
cmp bl, 0x32
jne 0x57b6f6
push 0x6e
lea eax, [ebp - 0x2c]
push eax
mov ecx, 0x2e
mov edx, 0x58
mov eax, 0x16
call fcn.0040be84
jmp 0x57b731
cmp bl, 0x3c
jne 0x57b717
push 0x6e
lea eax, [ebp - 0x2c]
push eax
mov ecx, 0x46
mov edx, 0x58
mov eax, 0x2f
call fcn.0040be84
jmp 0x57b731
push 0x6e
lea eax, [ebp - 0x2c]
push eax
mov ecx, 0x5f
mov edx, 0x58
mov eax, 0x47
call fcn.0040be84
lea eax, [ebp - 0x1c]
push eax
push 2
push 2
push 0xff
mov eax, dword [ebp - 4]
mov eax, dword [eax + 4]
mov eax, dword [eax + 4]
mov ecx, dword [ebp - 8]
lea edx, [ebp - 0x2c]
call fcn.00579aec
jmp 0x57c039
mov eax, ebx
sub al, 0x2d
je 0x57b76d
sub al, 6
je 0x57b76d
sub al, 0xa
je 0x57b76d
sub al, 6
jne 0x57b819
cmp bl, 0x2d
jne 0x57b78e
push 0x84
lea eax, [ebp - 0x2c]
push eax
mov ecx, 0x16
mov edx, 0x6e
xor eax, eax
call fcn.0040be84
jmp 0x57b7f3
cmp bl, 0x33
jne 0x57b7b2
push 0x84
lea eax, [ebp - 0x2c]
push eax
mov ecx, 0x2e
mov edx, 0x6e
mov eax, 0x16
call fcn.0040be84
jmp 0x57b7f3
cmp bl, 0x3d
jne 0x57b7d6
push 0x84
lea eax, [ebp - 0x2c]
push eax
mov ecx, 0x46
mov edx, 0x6e
mov eax, 0x2f
call fcn.0040be84
jmp 0x57b7f3
push 0x84
lea eax, [ebp - 0x2c]
push eax
mov ecx, 0x5f
mov edx, 0x6e
mov eax, 0x47
call fcn.0040be84
lea eax, [ebp - 0x1c]
push eax
push 2
push 2
push 0xff
mov eax, dword [ebp - 4]
mov eax, dword [eax + 4]
mov eax, dword [eax + 4]
mov ecx, dword [ebp - 8]
lea edx, [ebp - 0x2c]
call fcn.00579aec
jmp 0x57c039
mov eax, ebx
add al, 0xcc
sub al, 4
jae 0x57b8d1
cmp bl, 0x2d
jne 0x57b846
push 0x84
lea eax, [ebp - 0x2c]
push eax
mov ecx, 0x14
mov edx, 0x6e
xor eax, eax
call fcn.0040be84
jmp 0x57b8ab
cmp bl, 0x3d
jne 0x57b86a
push 0x84
lea eax, [ebp - 0x2c]
push eax
mov ecx, 0x2c
mov edx, 0x6e
mov eax, 0x16
call fcn.0040be84
jmp 0x57b8ab
cmp bl, 0x3d
jne 0x57b88e
push 0x84
lea eax, [ebp - 0x2c]
push eax
mov ecx, 0x44
mov edx, 0x6e
mov eax, 0x2f
call fcn.0040be84
jmp 0x57b8ab
push 0x84
lea eax, [ebp - 0x2c]
push eax
mov ecx, 0x5d
mov edx, 0x6e
mov eax, 0x47
call fcn.0040be84
lea eax, [ebp - 0x1c]
push eax
push 2
push 2
push 0xff
mov eax, dword [ebp - 4]
mov eax, dword [eax + 4]
mov eax, dword [eax + 4]
mov ecx, dword [ebp - 8]
lea edx, [ebp - 0x2c]
call fcn.00579aec
jmp 0x57c039
mov eax, ebx
add al, 0xeb
sub al, 3
jae 0x57b9ee
mov esi, 0x16
cmp bl, 0x15
jne 0x57b910
mov eax, esi
add eax, eax
push eax
lea eax, [ebp - 0x2c]
push eax
mov eax, dword [ebp - 0x14]
sub eax, dword [ebp - 0x1c]
push eax
mov eax, 0xc7
pop edx
sub eax, edx
mov ecx, 0xc7
mov edx, esi
call fcn.0040be84
jmp 0x57b9c8
cmp bl, 0x16
jne 0x57b93f
lea eax, [esi + esi*2]
push eax
lea eax, [ebp - 0x2c]
push eax
mov eax, dword [ebp - 0x14]
sub eax, dword [ebp - 0x1c]
push eax
mov eax, 0xc7
pop edx
sub eax, edx
mov edx, esi
add edx, edx
mov ecx, 0xc7
call fcn.0040be84
jmp 0x57b9c8
cmp bl, 0x12
jne 0x57b96d
mov eax, esi
add eax, eax
add eax, eax
push eax
lea eax, [ebp - 0x2c]
push eax
mov eax, dword [ebp - 0x14]
sub eax, dword [ebp - 0x1c]
push eax
mov eax, 0xc7
pop edx
sub eax, edx
lea edx, [esi + esi*2]
mov ecx, 0xc7
call fcn.0040be84
jmp 0x57b9c8
cmp bl, 0x13
jne 0x57b99b
lea eax, [esi + esi*4]
push eax
lea eax, [ebp - 0x2c]
push eax
mov eax, dword [ebp - 0x14]
sub eax, dword [ebp - 0x1c]
push eax
mov eax, 0xc7
pop edx
sub eax, edx
mov edx, esi
add edx, edx
add edx, edx
mov ecx, 0xc7
call fcn.0040be84
jmp 0x57b9c8
cmp bl, 0x17
jne 0x57b9c8
mov eax, esi
add eax, eax
lea eax, [eax + eax*2]
push eax
lea eax, [ebp - 0x2c]
push eax
mov eax, dword [ebp - 0x14]
sub eax, dword [ebp - 0x1c]
push eax
mov eax, 0xc7
pop edx
sub eax, edx
lea edx, [esi + esi*4]
mov ecx, 0xc7
call fcn.0040be84
lea eax, [ebp - 0x1c]
push eax
push 2
push 2
push 0xff
mov eax, dword [ebp - 4]
mov eax, dword [eax + 4]
mov eax, dword [eax + 4]
mov ecx, dword [ebp - 8]
lea edx, [ebp - 0x2c]
call fcn.00579aec
jmp 0x57c039
mov eax, ebx
add al, 0xb5
sub al, 3
jb 0x57b9fe
sub al, 3
jne 0x57bac9
cmp bl, 0x4b
jne 0x57ba29
push 0x2c
lea eax, [ebp - 0x2c]
push eax
mov eax, dword [ebp - 0x14]
sub eax, dword [ebp - 0x1c]
push eax
mov eax, 0x16
pop edx
sub eax, edx
mov ecx, 0x16
mov edx, 0x16
call fcn.0040be84
jmp 0x57baa3
cmp bl, 0x51
jne 0x57ba54
push 0x2c
lea eax, [ebp - 0x2c]
push eax
mov eax, dword [ebp - 0x14]
sub eax, dword [ebp - 0x1c]
push eax
mov eax, 0x2e
pop edx
sub eax, edx
mov ecx, 0x2e
mov edx, 0x16
call fcn.0040be84
jmp 0x57baa3
cmp bl, 0x4c
jne 0x57ba7f
push 0x2c
lea eax, [ebp - 0x2c]
push eax
mov eax, dword [ebp - 0x14]
sub eax, dword [ebp - 0x1c]
push eax
mov eax, 0x46
pop edx
sub eax, edx
mov ecx, 0x46
mov edx, 0x16
call fcn.0040be84
jmp 0x57baa3
push 0x2c
lea eax, [ebp - 0x2c]
push eax
mov eax, dword [ebp - 0x14]
sub eax, dword [ebp - 0x1c]
push eax
mov eax, 0x5f
pop edx
sub eax, edx
mov ecx, 0x5f
mov edx, 0x16
call fcn.0040be84
lea eax, [ebp - 0x1c]
push eax
push 2
push 2
push 0xff
mov eax, dword [ebp - 4]
mov eax, dword [eax + 4]
mov eax, dword [eax + 4]
mov ecx, dword [ebp - 8]
lea edx, [ebp - 0x2c]
call fcn.00579aec
jmp 0x57c039
mov eax, ebx
add al, 0xaa
sub al, 4
jae 0x57bba0
cmp bl, 0x4b
jne 0x57bb00
push 0x42
lea eax, [ebp - 0x2c]
push eax
mov eax, dword [ebp - 0x14]
sub eax, dword [ebp - 0x1c]
push eax
mov eax, 0x16
pop edx
sub eax, edx
mov ecx, 0x16
mov edx, 0x2c
call fcn.0040be84
jmp 0x57bb7a
cmp bl, 0x51
jne 0x57bb2b
push 0x42
lea eax, [ebp - 0x2c]
push eax
mov eax, dword [ebp - 0x14]
sub eax, dword [ebp - 0x1c]
push eax
mov eax, 0x2e
pop edx
sub eax, edx
mov ecx, 0x2e
mov edx, 0x2c
call fcn.0040be84
jmp 0x57bb7a
cmp bl, 0x4c
jne 0x57bb56
push 0x42
lea eax, [ebp - 0x2c]
push eax
mov eax, dword [ebp - 0x14]
sub eax, dword [ebp - 0x1c]
push eax
mov eax, 0x46
pop edx
sub eax, edx
mov ecx, 0x46
mov edx, 0x2c
call fcn.0040be84
jmp 0x57bb7a
push 0x42
lea eax, [ebp - 0x2c]
push eax
mov eax, dword [ebp - 0x14]
sub eax, dword [ebp - 0x1c]
push eax
mov eax, 0x5f
pop edx
sub eax, edx
mov ecx, 0x5f
mov edx, 0x2c
call fcn.0040be84
lea eax, [ebp - 0x1c]
push eax
push 2
push 2
push 0xff
mov eax, dword [ebp - 4]
mov eax, dword [eax + 4]
mov eax, dword [eax + 4]
mov ecx, dword [ebp - 8]
lea edx, [ebp - 0x2c]
call fcn.00579aec
jmp 0x57c039
mov eax, ebx
add al, 0xbb
sub al, 4
jae 0x57bc4c
cmp bl, 0x45
jne 0x57bbca
push 0x2c
lea eax, [ebp - 0x2c]
push eax
mov ecx, 0x14
mov edx, 0x16
xor eax, eax
call fcn.0040be84
jmp 0x57bc26
cmp bl, 0x46
jne 0x57bbeb
push 0x2c
lea eax, [ebp - 0x2c]
push eax
mov ecx, 0x2c
mov edx, 0x16
mov eax, 0x16
call fcn.0040be84
jmp 0x57bc26
cmp bl, 0x47
jne 0x57bc0c
push 0x2c
lea eax, [ebp - 0x2c]
push eax
mov ecx, 0x44
mov edx, 0x16
mov eax, 0x2e
call fcn.0040be84
jmp 0x57bc26
push 0x2c
lea eax, [ebp - 0x2c]
push eax
mov ecx, 0x5d
mov edx, 0x16
mov eax, 0x47
call fcn.0040be84
lea eax, [ebp - 0x1c]
push eax
push 2
push 2
push 0xff
mov eax, dword [ebp - 4]
mov eax, dword [eax + 4]
mov eax, dword [eax + 4]
mov ecx, dword [ebp - 8]
lea edx, [ebp - 0x2c]
call fcn.00579aec
jmp 0x57c039
mov eax, ebx
sub al, 0x4f
je 0x57bc5c
add al, 0xfc
sub al, 3
jae 0x57bcfc
cmp bl, 0x53
jne 0x57bc7a
push 0x42
lea eax, [ebp - 0x2c]
push eax
mov ecx, 0x14
mov edx, 0x2c
xor eax, eax
call fcn.0040be84
jmp 0x57bcd6
cmp bl, 0x4f
jne 0x57bc9b
push 0x42
lea eax, [ebp - 0x2c]
push eax
mov ecx, 0x2c
mov edx, 0x2c
mov eax, 0x16
call fcn.0040be84
jmp 0x57bcd6
cmp bl, 0x54
jne 0x57bcbc
push 0x42
lea eax, [ebp - 0x2c]
push eax
mov ecx, 0x44
mov edx, 0x2c
mov eax, 0x2f
call fcn.0040be84
jmp 0x57bcd6
push 0x42
lea eax, [ebp - 0x2c]
push eax
mov ecx, 0x5d
mov edx, 0x2c
mov eax, 0x47
call fcn.0040be84
lea eax, [ebp - 0x1c]
push eax
push 2
push 2
push 0xff
mov eax, dword [ebp - 4]
mov eax, dword [eax + 4]
mov eax, dword [eax + 4]
mov ecx, dword [ebp - 8]
lea edx, [ebp - 0x2c]
call fcn.00579aec
jmp 0x57c039
mov eax, ebx
sub al, 0x4a
je 0x57bd12
sub al, 4
je 0x57bd12
sub al, 2
je 0x57bd12
sub al, 2
jne 0x57bdec
cmp bl, 0x52
jne 0x57bd43
push 0x84
lea eax, [ebp - 0x2c]
push eax
mov eax, dword [ebp - 0x14]
sub eax, dword [ebp - 0x1c]
push eax
mov eax, 0x16
pop edx
sub eax, edx
mov ecx, 0x16
mov edx, 0x6e
call fcn.0040be84
jmp 0x57bdc6
cmp bl, 0x50
jne 0x57bd71
push 0x84
lea eax, [ebp - 0x2c]
push eax
mov eax, dword [ebp - 0x14]
sub eax, dword [ebp - 0x1c]
push eax
mov eax, 0x2e
pop edx
sub eax, edx
mov ecx, 0x2e
mov edx, 0x6e
call fcn.0040be84
jmp 0x57bdc6
cmp bl, 0x4a
jne 0x57bd9f
push 0x84
lea eax, [ebp - 0x2c]
push eax
mov eax, dword [ebp - 0x14]
sub eax, dword [ebp - 0x1c]
push eax
mov eax, 0x46
pop edx
sub eax, edx
mov ecx, 0x46
mov edx, 0x6e
call fcn.0040be84
jmp 0x57bdc6
push 0x84
lea eax, [ebp - 0x2c]
push eax
mov eax, dword [ebp - 0x14]
sub eax, dword [ebp - 0x1c]
push eax
mov eax, 0x5f
pop edx
sub eax, edx
mov ecx, 0x5f
mov edx, 0x6e
call fcn.0040be84
lea eax, [ebp - 0x1c]
push eax
push 2
push 2
push 0xff
mov eax, dword [ebp - 4]
mov eax, dword [eax + 4]
mov eax, dword [eax + 4]
mov ecx, dword [ebp - 8]
lea edx, [ebp - 0x2c]
call fcn.00579aec
jmp 0x57c039
mov eax, ebx
add al, 0xdb
sub al, 2
jae 0x57be84
cmp bl, 0x25
jne 0x57be1c
push 0x236
lea eax, [ebp - 0x2c]
push eax
mov ecx, 0x110
mov edx, 0x1ff
mov eax, 0x10e
call fcn.0040be84
jmp 0x57be39
push 0x236
lea eax, [ebp - 0x2c]
push eax
mov ecx, 0x113
mov edx, 0x1ff
mov eax, 0x111
call fcn.0040be84
lea eax, [ebp - 0x1c]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 4]
mov eax, dword [eax + 4]
mov ecx, dword [ebp - 8]
lea edx, [ebp - 0x2c]
call fcn.00579ab8
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x44]
mov edx, 0xffffff
call fcn.0045c708
mov edx, dword [ebp - 0x1c]
inc edx
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 8]
mov ebx, dword [eax]
call dword [ebx + 0x5c]
mov edx, dword [ebp - 0x1c]
inc edx
mov ecx, dword [ebp - 0x10]
mov eax, dword [ebp - 8]
mov ebx, dword [eax]
call dword [ebx + 0x58]
jmp 0x57c039
mov eax, ebx
add al, 0xe0
sub al, 4
jae 0x57bf2e
cmp bl, 0x21
jne 0x57beb4
push 0xbf
lea eax, [ebp - 0x2c]
push eax
mov ecx, 0x7f
mov edx, 0xbb
mov eax, 0x7a
call fcn.0040be84
jmp 0x57bef5
cmp bl, 0x22
jne 0x57bed8
push 0xbf
lea eax, [ebp - 0x2c]
push eax
mov ecx, 0x85
mov edx, 0xbb
mov eax, 0x80
call fcn.0040be84
jmp 0x57bef5
push 0xbf
lea eax, [ebp - 0x2c]
push eax
mov ecx, 0x79
mov edx, 0xbb
mov eax, 0x74
call fcn.0040be84
lea esi, [ebp - 0x1c]
lea edi, [ebp - 0x3c]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x3c]
add eax, 5
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x38]
add eax, 4
mov dword [ebp - 0x30], eax
lea eax, [ebp - 0x3c]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 4]
mov eax, dword [eax + 4]
mov ecx, dword [ebp - 8]
lea edx, [ebp - 0x2c]
call fcn.00579ab8
jmp 0x57c039
cmp bl, 0x44
jne 0x57bf8d
push 0x83
lea eax, [ebp - 0x2c]
push eax
mov ecx, 0x62
mov edx, 0x6f
mov eax, 0x60
call fcn.0040be84
lea esi, [ebp - 0x1c]
lea edi, [ebp - 0x3c]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
push 0xffffffffffffffff
push 0
lea eax, [ebp - 0x3c]
push eax
call sub.user32.dll_InflateRect
mov eax, dword [ebp - 0x3c]
add eax, 2
mov dword [ebp - 0x34], eax
lea eax, [ebp - 0x3c]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 4]
mov eax, dword [eax + 4]
mov ecx, dword [ebp - 8]
lea edx, [ebp - 0x2c]
call fcn.00579ab8
jmp 0x57c039
cmp bl, 0x10
jne 0x57bfc6
push 0x2c
lea eax, [ebp - 0x2c]
push eax
mov ecx, 0xc5
mov edx, 0x16
mov eax, 0x63
call fcn.0040be84
lea eax, [ebp - 0x1c]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 4]
mov eax, dword [eax + 4]
mov ecx, dword [ebp - 8]
lea edx, [ebp - 0x2c]
call fcn.00579ab8
jmp 0x57c039
cmp bl, 0x14
jne 0x57c002
push 0x84
lea eax, [ebp - 0x2c]
push eax
mov ecx, 0xc5
mov edx, 0x6e
mov eax, 0x63
call fcn.0040be84
lea eax, [ebp - 0x1c]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 4]
mov eax, dword [eax + 4]
mov ecx, dword [ebp - 8]
lea edx, [ebp - 0x2c]
call fcn.00579ab8
jmp 0x57c039
cmp bl, 0x11
jne 0x57c039
push 0x42
lea eax, [ebp - 0x2c]
push eax
mov ecx, 0xc5
mov edx, 0x2c
mov eax, 0x63
call fcn.0040be84
lea eax, [ebp - 0x1c]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 4]
mov eax, dword [eax + 4]
mov ecx, dword [ebp - 8]
lea edx, [ebp - 0x2c]
call fcn.00579ab8
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8