Function at 0x5ca7c0
Capabilities:
Parse credit card information

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x7c
push ebx
push esi
push edi
mov edi, dword [ebp + 8]
mov esi, ecx
mov eax, edi
mov dword [ebp - 8], esi
mov dword [ebp - 0xc], eax
mov cl, byte [edi]
cmp cl, 0x2e
je 0x5ca802
cmp cl, 0x3e
je 0x5ca7fb
cmp cl, 0xf0
je 0x5ca7eb
xor ecx, ecx
jmp 0x5ca80d
push 0x9c00a8
mov ecx, esi
call fcn.005cbfc0
xor ecx, ecx
jmp 0x5ca807
mov ecx, 0x9c0084
jmp 0x5ca807
mov ecx, 0x9c0094
lea eax, [edi + 1]
mov dword [ebp - 0xc], eax
movzx eax, byte [eax]
lea edx, [ebp - 0xc]
push edx
push ecx
mov dword [ebp - 0x10], ecx
mov ecx, esi
lea eax, [eax + eax*2]
lea eax, [eax*4 + 0xa4a3a8]
push eax
call fcn.005c95c0
mov edi, dword [ebp - 0xc]
test al, al
jne 0x5cb98d
mov cl, byte [edi]
movzx edx, cl
lea eax, [edx - 0xf]
cmp eax, 0xf0
ja case.0x5ca84f.16
movzx eax, byte [eax + 0x5cb9fc]
jmp dword [eax*4 + 0x5cb99c]
push 0x9c00c0
mov ecx, esi
call fcn.005cbfc0
movzx eax, word [edi + 1]
mov ecx, esi
push eax
call fcn.005cc340
add edi, 3
sub edi, dword [ebp + 8]
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
movzx eax, byte [edi + 1]
mov ebx, eax
and eax, 7
shr ebx, 3
and ebx, 7
mov dword [ebp - 0xc], eax
cmp cl, 0x6b
jne 0x5ca89c
movzx eax, byte [edi + 2]
jmp 0x5ca89f
mov eax, dword [edi + 2]
push 0x9bfebc
mov ecx, esi
mov dword [ebp - 0x10], eax
call fcn.005cbfc0
push ebx
mov ecx, esi
call fcn.005cc150
push 0x984a54
mov ecx, esi
call fcn.005cbfc0
push dword [ebp - 0xc]
mov ecx, esi
call fcn.005cc150
push 0x984a54
mov ecx, esi
call fcn.005cbfc0
push dword [ebp - 0x10]
mov ecx, esi
call fcn.005cc340
cmp byte [edi], 0x6b
mov eax, 4
mov ecx, 1
cmove eax, ecx
add edi, 2
add edi, eax
sub edi, dword [ebp + 8]
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
mov bl, byte [edi + 1]
mov al, bl
and al, 0xc0
cmp al, 0xc0
jne 0x5ca958
test bl, 0x38
jne 0x5ca958
push 0x9c00c8
mov ecx, esi
call fcn.005cbfc0
movzx eax, bl
mov ecx, esi
and eax, 7
push eax
call fcn.005cc150
push 0x984a54
mov ecx, esi
call fcn.005cbfc0
movzx eax, byte [edi + 2]
mov ecx, esi
push eax
call fcn.005cc340
add edi, 3
sub edi, dword [ebp + 8]
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
push 0x9c00c8
mov ecx, esi
inc edi
call fcn.005cbfc0
push fcn.005cc150
push edi
mov ecx, esi
call fcn.005cc490
mov ecx, dword [ebp - 8]
add edi, eax
push 0x984a54
movzx esi, byte [edi]
call fcn.005cbfc0
mov ecx, dword [ebp - 8]
push esi
call fcn.005cc340
inc edi
sub edi, dword [ebp + 8]
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
push 0
push edi
mov ecx, esi
call fcn.005cc190
add edi, eax
sub edi, dword [ebp + 8]
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
mov bh, byte [edi + 1]
mov byte [ebp - 0xc], bh
mov edx, dword [ebp - 0xc]
push edx
call fcn.005c9770
add esp, 4
mov ecx, eax
cmp bh, 0xa2
je 0x5caeb0
cmp bh, 0x31
je 0x5caeb0
mov al, bh
and al, 0xf0
cmp al, 0x80
jne 0x5ca9ff
push dword [ebp - 0x10]
mov ecx, esi
push edi
call fcn.005cbbd0
add edi, eax
sub edi, dword [ebp + 8]
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
cmp bh, 0xbe
je 0x5cae92
cmp bh, 0xbf
je 0x5cae92
cmp bh, 0xb6
je 0x5cae92
cmp bh, 0xb7
je 0x5cae92
cmp bh, 0xaf
je 0x5cae92
cmp bh, 0xbd
je 0x5cae92
cmp bh, 0x57
jne 0x5caa8e
mov bl, byte [edi + 2]
add edi, 2
push ecx
mov ecx, esi
call fcn.005cbfc0
push 0x981f7c
mov ecx, esi
call fcn.005cbfc0
movzx eax, bl
mov ecx, esi
shr eax, 3
and eax, 7
push eax
call fcn.005cc840
push 0x984a54
mov ecx, esi
call fcn.005cbfc0
push fcn.005cc840
push edi
mov ecx, esi
call fcn.005cc490
add edi, eax
sub edi, dword [ebp + 8]
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
cmp bh, 0xb1
jne 0x5caab1
add edi, 2
push edi
push 2
push ecx
mov ecx, esi
call fcn.005cc3b0
add edi, eax
sub edi, dword [ebp + 8]
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
cmp al, 0x90
jne 0x5caacd
push edi
mov ecx, esi
call fcn.005cc9e0
add edi, eax
sub edi, dword [ebp + 8]
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
cmp al, 0x40
jne 0x5caae9
push edi
mov ecx, esi
call fcn.005c9100
add edi, eax
sub edi, dword [ebp + 8]
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
cmp bh, 0x2f
jne 0x5cab3b
mov bl, byte [edi + 2]
mov ecx, esi
push 0x9c00d0
call fcn.005cbfc0
movzx esi, bl
mov ebx, dword [ebp - 8]
mov eax, esi
shr eax, 3
mov ecx, ebx
and eax, 7
push eax
call fcn.005cc840
push 0x984a54
mov ecx, ebx
call fcn.005cbfc0
and esi, 7
mov ecx, ebx
push esi
call fcn.005cc840
add edi, 3
sub edi, dword [ebp + 8]
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
cmp bh, 0x1f
jne 0x5cac6d
mov al, byte [edi + 2]
test al, al
jne 0x5cab68
push 0x9bfbcc
mov ecx, esi
call fcn.005cbfc0
add edi, 3
sub edi, dword [ebp + 8]
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
cmp al, 0x40
jne 0x5cab8f
cmp byte [edi + 3], 0
jne 0x5cab8f
push 0x9bfbcc
mov ecx, esi
call fcn.005cbfc0
add edi, 4
sub edi, dword [ebp + 8]
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
cmp al, 0x44
jne 0x5cabbc
cmp byte [edi + 3], 0
jne 0x5cabbc
cmp byte [edi + 4], 0
jne 0x5cabbc
push 0x9bfbcc
mov ecx, esi
call fcn.005cbfc0
add edi, 5
sub edi, dword [ebp + 8]
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
cmp al, 0x80
jne 0x5cabf5
cmp byte [edi + 3], 0
jne 0x5cabf5
cmp byte [edi + 4], 0
jne 0x5cabf5
cmp byte [edi + 5], 0
jne 0x5cabf5
cmp byte [edi + 6], 0
jne 0x5cabf5
push 0x9bfbcc
mov ecx, esi
call fcn.005cbfc0
add edi, 7
sub edi, dword [ebp + 8]
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
cmp al, 0x84
jne 0x5cac34
cmp byte [edi + 3], 0
jne 0x5cac34
cmp byte [edi + 4], 0
jne 0x5cac34
cmp byte [edi + 5], 0
jne 0x5cac34
cmp byte [edi + 6], 0
jne 0x5cac34
cmp byte [edi + 7], 0
jne 0x5cac34
push 0x9bfbcc
mov ecx, esi
call fcn.005cbfc0
add edi, 8
sub edi, dword [ebp + 8]
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
push 0x97a040
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x1c], 0x9bfdc8
push 0x6c5e84
push eax
mov dword [ebp - 0x18], 0x551
mov dword [ebp - 0x14], 0
call fcn.0042fe30
add esp, 0xc
sub edi, dword [ebp + 8]
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
add edi, 2
cmp bh, 0xab
je 0x5cadf4
cmp bh, 0xa4
je 0x5cadf4
cmp bh, 0xa5
je 0x5cadf4
cmp bh, 0xac
je 0x5cadf4
cmp bh, 0xad
je 0x5cadf4
cmp bh, 0xa3
je 0x5cadf4
cmp bh, 0x10
je 0x5cadd9
cmp bh, 0x11
je 0x5cadd9
push edx
call fcn.005cbb70
add esp, 4
test al, al
jne 0x5cadd9
cmp bh, 0x50
jne 0x5cad14
push 0x9c00dc
mov ecx, esi
call fcn.005cbfc0
movzx eax, byte [edi]
mov ecx, esi
shr eax, 3
and eax, 7
push eax
call fcn.005cc150
push 0x984a54
mov ecx, esi
call fcn.005cbfc0
push fcn.005cc840
push edi
mov ecx, esi
call fcn.005cc490
add edi, eax
sub edi, dword [ebp + 8]
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
cmp bh, 0xc2
je 0x5cad5e
cmp bh, 0xc6
je 0x5cad57
push 0x97a040
lea eax, [ebp - 0x28]
mov dword [ebp - 0x28], 0x9bfdc8
push 0x6c5e84
push eax
mov dword [ebp - 0x24], 0x582
mov dword [ebp - 0x20], 0
call fcn.0042fe30
add esp, 0xc
sub edi, dword [ebp + 8]
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
push 0x9c00f0
jmp 0x5cad63
push 0x9c00e8
mov ecx, esi
call fcn.005cbfc0
push 0x981f7c
mov bl, byte [edi]
mov ecx, esi
call fcn.005cbfc0
movzx eax, bl
mov ecx, esi
shr eax, 3
and eax, 7
push eax
call fcn.005cc840
push 0x984a54
mov ecx, esi
call fcn.005cbfc0
push fcn.005cc840
push edi
mov ecx, esi
call fcn.005cc490
mov ebx, dword [ebp - 8]
add edi, eax
push 0x9ae100
mov ecx, ebx
movzx esi, byte [edi]
call fcn.005cbfc0
push esi
mov ecx, ebx
call fcn.005cc340
push 0x987134
mov ecx, ebx
call fcn.005cbfc0
inc edi
sub edi, dword [ebp + 8]
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
push edi
push edx
push 0xf
mov ecx, esi
call fcn.005cc880
mov edi, eax
sub edi, dword [ebp + 8]
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
push ecx
mov ecx, esi
call fcn.005cbfc0
mov bl, byte [edi]
mov ecx, esi
push 0x981f7c
call fcn.005cbfc0
push fcn.005cc150
push edi
mov ecx, esi
call fcn.005cc490
push 0x984a54
mov ecx, esi
add edi, eax
call fcn.005cbfc0
movzx eax, bl
mov ecx, esi
shr eax, 3
and eax, 7
push eax
call fcn.005cc150
cmp bh, 0xab
je 0x5cb98d
cmp bh, 0xa3
je 0x5cb98d
cmp bh, 0xa5
je 0x5cae78
cmp bh, 0xad
je 0x5cae78
push 0x986bb8
mov ecx, esi
call fcn.005cbfc0
movzx eax, byte [edi]
mov ecx, esi
push eax
inc edi
call fcn.005cc340
sub edi, dword [ebp + 8]
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
push 0x9c00d8
mov ecx, esi
call fcn.005cbfc0
sub edi, dword [ebp + 8]
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
add edi, 2
push edi
push 1
push ecx
mov ecx, esi
call fcn.005cc3b0
add edi, eax
sub edi, dword [ebp + 8]
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
push ecx
mov ecx, esi
call fcn.005cbfc0
add edi, 2
sub edi, dword [ebp + 8]
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
inc edi
test byte [edi], 0x38
jne 0x5cb98d
push 0x9c00f8
mov ecx, esi
call fcn.005cbfc0
push fcn.005cc150
push edi
mov ecx, esi
call fcn.005cc490
add edi, eax
sub edi, dword [ebp + 8]
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
movzx eax, byte [edi + 1]
inc edi
shr eax, 3
and eax, 7
cmp eax, 6
ja case.0x5caf0c.3
jmp dword [eax*4 + 0x5cbaf0]
mov eax, 0x9bfc30
jmp 0x5caf3b
mov eax, 0x9bfc28
jmp 0x5caf3b
mov eax, 0x9bfc2c
jmp 0x5caf3b
mov eax, 0x985e84
jmp 0x5caf3b
mov eax, 0x9bfc10
jmp 0x5caf3b
mov eax, 0x9c0100
push eax
mov ecx, esi
call fcn.005cbfc0
push 0x981f7c
mov ecx, esi
call fcn.005cbfc0
push fcn.005cc150
push edi
mov ecx, esi
call fcn.005cc490
add edi, eax
sub edi, dword [ebp + 8]
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
cmp cl, 0xc6
mov eax, 0x9bfbb0
mov ecx, 0x9bfbb8
sete bl
inc edi
test bl, bl
mov byte [ebp - 1], bl
cmove eax, ecx
mov ecx, esi
push eax
call fcn.005cbfc0
push 0x981f7c
mov ecx, esi
call fcn.005cbfc0
push fcn.005cc150
push edi
mov ecx, esi
call fcn.005cc490
add edi, eax
test bl, bl
je 0x5cafb1
movzx ebx, byte [edi]
jmp 0x5cafb3
mov ebx, dword [edi]
push 0x984a54
mov ecx, esi
call fcn.005cbfc0
push ebx
mov ecx, esi
call fcn.005cc340
cmp byte [ebp - 1], 0
mov eax, 4
mov ecx, 1
cmovne eax, ecx
add edi, eax
sub edi, dword [ebp + 8]
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
push 0x9c010c
mov ecx, esi
inc edi
call fcn.005cbfc0
push fcn.005cc150
push edi
mov ecx, esi
call fcn.005cc490
mov ecx, dword [ebp - 8]
add edi, eax
push 0x984a54
movzx esi, byte [edi]
call fcn.005cbfc0
mov ecx, dword [ebp - 8]
push esi
call fcn.005cc340
inc edi
sub edi, dword [ebp + 8]
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
mov bl, byte [edi + 1]
cmp cl, 0x88
mov edx, 0x9bfbb8
mov eax, 0x9bfbb0
sete cl
inc edi
test cl, cl
mov ecx, esi
cmove eax, edx
push eax
call fcn.005cbfc0
push 0x981f7c
mov ecx, esi
call fcn.005cbfc0
push fcn.005cc150
push edi
mov ecx, esi
call fcn.005cc490
push 0x984a54
mov ecx, esi
add edi, eax
call fcn.005cbfc0
movzx eax, bl
mov ecx, esi
shr eax, 3
and eax, 7
push eax
call fcn.005cc150
sub edi, dword [ebp + 8]
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
mov al, byte [edi + 1]
inc edi
cmp al, 0x8b
jne 0x5cb0bb
inc edi
mov ecx, esi
push edi
push 1
push 0x9c0114
call fcn.005cc3b0
add edi, eax
sub edi, dword [ebp + 8]
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
cmp al, 0x89
jne 0x5cb109
mov bl, byte [edi + 1]
inc edi
push 0x9c011c
mov ecx, esi
call fcn.005cbfc0
push fcn.005cc150
push edi
mov ecx, esi
call fcn.005cc490
push 0x984a54
mov ecx, esi
add edi, eax
call fcn.005cbfc0
movzx eax, bl
mov ecx, esi
shr eax, 3
and eax, 7
push eax
call fcn.005cc150
sub edi, dword [ebp + 8]
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
cmp al, 0xf
jne 0x5cb4af
mov al, byte [edi + 1]
inc edi
cmp al, 0x6e
jne 0x5cb166
mov bl, byte [edi + 1]
mov ecx, esi
push 0x9c0124
call fcn.005cbfc0
movzx esi, bl
mov ebx, dword [ebp - 8]
mov eax, esi
shr eax, 3
mov ecx, ebx
and eax, 7
push eax
call fcn.005cc840
push 0x984a54
mov ecx, ebx
call fcn.005cbfc0
and esi, 7
mov ecx, ebx
push esi
call fcn.005cc150
add edi, 2
sub edi, dword [ebp + 8]
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
cmp al, 0x7e
jne 0x5cb1b7
mov bl, byte [edi + 1]
mov ecx, esi
push 0x9c0124
call fcn.005cbfc0
movzx esi, bl
mov ebx, dword [ebp - 8]
mov eax, esi
and eax, 7
mov ecx, ebx
push eax
call fcn.005cc150
push 0x984a54
mov ecx, ebx
call fcn.005cbfc0
shr esi, 3
mov ecx, ebx
and esi, 7
push esi
call fcn.005cc840
add edi, 2
sub edi, dword [ebp + 8]
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
cmp al, 0xd6
jne 0x5cb205
mov bl, byte [edi + 1]
inc edi
push 0x9bfe88
mov ecx, esi
call fcn.005cbfc0
push fcn.005cc150
push edi
mov ecx, esi
call fcn.005cc490
push 0x984a54
mov ecx, esi
add edi, eax
call fcn.005cbfc0
movzx eax, bl
mov ecx, esi
shr eax, 3
and eax, 7
push eax
call fcn.005cc840
sub edi, dword [ebp + 8]
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
cmp al, 0x57
je 0x5cb497
cmp al, 0x56
je 0x5cb497
cmp al, 0x54
je 0x5cb497
cmp al, 0x1f
jne 0x5cb250
cmp byte [edi + 1], 0x44
jne 0x5cb250
cmp byte [edi + 2], 0
jne 0x5cb250
cmp byte [edi + 3], 0
jne 0x5cb250
push 0x9bfbcc
mov ecx, esi
add edi, 4
call fcn.005cbfc0
sub edi, dword [ebp + 8]
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
cmp al, 0x50
jne 0x5cb266
push 0x9c012c
mov ecx, esi
call fcn.005cbfc0
inc edi
jmp 0x5cacda
cmp al, 0x3a
jne 0x5cb2d3
cmp byte [edi + 1], 0x16
jne 0x5cb2d3
push 0x9c0138
mov ecx, esi
call fcn.005cbfc0
movzx esi, byte [edi + 2]
mov ebx, dword [ebp - 8]
mov eax, esi
and eax, 7
mov ecx, ebx
push eax
call fcn.005cc150
push 0x984a54
mov ecx, ebx
call fcn.005cbfc0
shr esi, 3
mov ecx, ebx
and esi, 7
push esi
call fcn.005cc840
push 0x984a54
mov ecx, ebx
call fcn.005cbfc0
movzx eax, byte [edi + 3]
mov ecx, ebx
push eax
call fcn.005cc340
add edi, 4
sub edi, dword [ebp + 8]
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
cmp al, 0x38
jne 0x5cb2ef
push edi
mov ecx, esi
call fcn.005cbe10
add edi, eax
sub edi, dword [ebp + 8]
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
cmp al, 0xef
jne 0x5cb300
mov bl, byte [edi + 1]
push 0x9c0140
jmp 0x5cb452
cmp al, 0x3a
jne 0x5cb3af
inc edi
cmp byte [edi], 0xb
jne 0x5cb376
mov bl, byte [edi + 1]
mov ecx, esi
push 0x9c0148
call fcn.005cbfc0
movzx esi, bl
mov ebx, dword [ebp - 8]
mov eax, esi
shr eax, 3
mov ecx, ebx
and eax, 7
push eax
call fcn.005cc840
push 0x986bb8
mov ecx, ebx
call fcn.005cbfc0
and esi, 7
mov ecx, ebx
push esi
call fcn.005cc840
push 0x986bb8
mov ecx, ebx
call fcn.005cbfc0
movzx eax, byte [edi + 2]
mov ecx, ebx
and eax, 3
push eax
call fcn.005cc340
add edi, 3
sub edi, dword [ebp + 8]
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
push 0x97a040
lea eax, [ebp - 0x34]
mov dword [ebp - 0x34], 0x9bfdc8
push 0x6c5e84
push eax
mov dword [ebp - 0x30], 0x629
mov dword [ebp - 0x2c], 0
call fcn.0042fe30
add esp, 0xc
sub edi, dword [ebp + 8]
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
cmp al, 0x14
jne 0x5cb3c0
mov bl, byte [edi + 1]
push 0x9c0154
jmp 0x5cb452
cmp al, 0x15
jne 0x5cb3d1
mov bl, byte [edi + 1]
push 0x9c0160
jmp 0x5cb452
cmp al, 0xfe
je 0x5cb445
cmp al, 0xfa
je 0x5cb445
cmp al, 0x2f
je 0x5cb445
cmp al, 0x58
je 0x5cb445
cmp al, 0x5c
je 0x5cb445
cmp al, 0x59
je 0x5cb445
cmp al, 0x5e
je 0x5cb445
cmp al, 0x5d
je 0x5cb445
cmp al, 0x5f
je 0x5cb445
cmp al, 0x51
je 0x5cb445
cmp al, 0x5a
je 0x5cb445
cmp al, 0xc6
jne 0x5cb40c
inc edi
push 0x9c016c
jmp 0x5cad6f
push 0x97a040
lea eax, [ebp - 0x40]
mov dword [ebp - 0x40], 0x9bfdc8
push 0x6c5e84
push eax
mov dword [ebp - 0x3c], 0x655
mov dword [ebp - 0x38], 0
call fcn.0042fe30
add esp, 0xc
sub edi, dword [ebp + 8]
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
mov bl, byte [edi + 1]
push eax
call fcn.005cbf30
add esp, 4
push eax
mov ecx, esi
call fcn.005cbfc0
movzx esi, bl
mov ebx, dword [ebp - 8]
mov eax, esi
shr eax, 3
mov ecx, ebx
and eax, 7
push eax
call fcn.005cc840
push 0x984a54
mov ecx, ebx
call fcn.005cbfc0
and esi, 7
mov ecx, ebx
push esi
call fcn.005cc840
add edi, 2
sub edi, dword [ebp + 8]
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
push edi
mov ecx, esi
call fcn.005c8ff0
add edi, eax
sub edi, dword [ebp + 8]
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
cmp al, 0x3b
jne 0x5cb4fa
push 0x9c0174
mov ecx, esi
inc edi
call fcn.005cbfc0
movzx eax, byte [edi]
mov ecx, esi
shr eax, 3
and eax, 7
push eax
call fcn.005cc150
push 0x984a54
mov ecx, esi
call fcn.005cbfc0
push fcn.005cc150
push edi
mov ecx, esi
call fcn.005cc490
add edi, eax
sub edi, dword [ebp + 8]
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
cmp al, 0x81
je 0x5cb5af
cmp al, 0x83
je 0x5cb5af
cmp al, 0xc7
jne 0x5cb557
push 0x9c011c
mov ecx, esi
inc edi
call fcn.005cbfc0
push fcn.005cc150
push edi
mov ecx, esi
call fcn.005cc490
mov ecx, dword [ebp - 8]
add edi, eax
push 0x984a54
movzx esi, word [edi]
call fcn.005cbfc0
mov ecx, dword [ebp - 8]
movsx eax, si
push eax
call fcn.005cc340
add edi, 2
sub edi, dword [ebp + 8]
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
cmp al, 0x90
jne 0x5cb576
push 0x9bfbcc
mov ecx, esi
inc edi
call fcn.005cbfc0
sub edi, dword [ebp + 8]
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
push 0x97a040
lea eax, [ebp - 0x4c]
mov dword [ebp - 0x4c], 0x9bfdc8
push 0x6c5e84
push eax
mov dword [ebp - 0x48], 0x66d
mov dword [ebp - 0x44], 0
call fcn.0042fe30
add esp, 0xc
sub edi, dword [ebp + 8]
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
push 1
push edi
mov ecx, esi
call fcn.005cc190
add edi, eax
sub edi, dword [ebp + 8]
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
mov bl, byte [edi + 1]
mov al, bl
and al, 0xc0
cmp al, 0xc0
jne 0x5cb607
mov al, bl
and al, 0x38
cmp al, 8
jne 0x5cb607
push 0x9c017c
mov ecx, esi
call fcn.005cbfc0
movzx eax, bl
mov ecx, esi
and eax, 7
push eax
call fcn.005cc150
add edi, 2
sub edi, dword [ebp + 8]
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
push 0x97a040
lea eax, [ebp - 0x58]
mov dword [ebp - 0x58], 0x9bfdc8
push 0x6c5e84
push eax
mov dword [ebp - 0x54], 0x679
mov dword [ebp - 0x50], 0
call fcn.0042fe30
add esp, 0xc
add edi, 2
sub edi, dword [ebp + 8]
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
push 0x9c0184
mov ecx, esi
call fcn.005cbfc0
push dword [edi + 1]
mov ecx, esi
call fcn.005cc340
add edi, 5
sub edi, dword [ebp + 8]
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
push 0x9c0184
mov ecx, esi
call fcn.005cbfc0
movsx eax, byte [edi + 1]
mov ecx, esi
push eax
call fcn.005cc340
add edi, 2
sub edi, dword [ebp + 8]
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
push 0x9c018c
mov ecx, esi
call fcn.005cbfc0
movzx eax, byte [edi + 1]
mov ecx, esi
push eax
call fcn.005cc340
add edi, 2
sub edi, dword [ebp + 8]
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
push 0x9c0198
mov ecx, esi
call fcn.005cbfc0
push dword [edi + 1]
mov ecx, esi
call fcn.005cc340
push edi
mov ecx, esi
call fcn.005c9170
add edi, 5
sub edi, dword [ebp + 8]
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
push edi
mov ecx, esi
call fcn.005c9220
add edi, eax
sub edi, dword [ebp + 8]
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
push edi
mov ecx, esi
call fcn.005c9fc0
add edi, eax
sub edi, dword [ebp + 8]
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
push edi
mov ecx, esi
call fcn.005cbdb0
add edi, eax
sub edi, dword [ebp + 8]
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
push edi
mov ecx, esi
call fcn.005c99c0
mov edi, eax
sub edi, dword [ebp + 8]
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
cmp byte [edi + 1], 0xf
jne 0x5cb8ee
mov cl, byte [edi + 2]
mov byte [ebp - 1], cl
cmp cl, 0x11
jne 0x5cb77c
push 0x9c01a4
mov ecx, esi
call fcn.005cbfc0
mov bl, byte [edi + 3]
add edi, 3
push fcn.005cc840
jmp 0x5cb1d0
cmp cl, 0x10
jne 0x5cb7a2
mov bl, byte [edi + 3]
add edi, 3
push 0x9c01a4
mov ecx, esi
call fcn.005cbfc0
movzx eax, bl
shr eax, 3
and eax, 7
push eax
jmp 0x5cb861
movzx eax, cl
mov ebx, 0x9c01ac
add eax, 0xffffffd6
cmp eax, 0x34
ja case.0x5cb7b9.43
movzx eax, byte [eax + 0x5cbb34]
jmp dword [eax*4 + 0x5cbb0c]
mov ebx, 0x9c01b4
jmp 0x5cb82d
mov ebx, 0x9c01c0
jmp 0x5cb82d
mov ebx, 0x9c01cc
jmp 0x5cb82d
mov ebx, 0x9c01d4
jmp 0x5cb82d
mov ebx, 0x9c01dc
jmp 0x5cb82d
mov ebx, 0x9c01e4
jmp 0x5cb82d
mov ebx, 0x9c01ec
jmp 0x5cb82d
mov ebx, 0x9c01f8
jmp 0x5cb82d
mov ebx, 0x9c0200
jmp 0x5cb82d
push 0x97a040
lea eax, [ebp - 0x64]
mov dword [ebp - 0x64], 0x9bfdc8
push 0x6c5e84
push eax
mov dword [ebp - 0x60], 0x6ce
mov dword [ebp - 0x5c], 0
call fcn.0042fe30
mov cl, byte [ebp - 1]
add esp, 0xc
movzx edx, byte [edi + 3]
add edi, 3
mov eax, edx
and edx, 7
shr eax, 3
and eax, 7
mov dword [ebp - 0xc], edx
mov dword [ebp - 0x10], eax
cmp cl, 0x2a
jne 0x5cb87e
push ebx
mov ecx, esi
call fcn.005cbfc0
push 0x981f7c
mov ecx, esi
call fcn.005cbfc0
push dword [ebp - 0x10]
mov ecx, esi
call fcn.005cc840
push 0x984a54
mov ecx, esi
call fcn.005cbfc0
push fcn.005cc150
jmp 0x5cacfc
cmp cl, 0x2d
je 0x5cb8ab
cmp cl, 0x2c
je 0x5cb8ab
push ebx
mov ecx, esi
call fcn.005cbfc0
push 0x981f7c
mov ecx, esi
call fcn.005cbfc0
push dword [ebp - 0x10]
mov ecx, esi
call fcn.005cc840
jmp 0x5caceb
push ebx
mov ecx, esi
call fcn.005cbfc0
push 0x981f7c
mov ecx, esi
call fcn.005cbfc0
push dword [ebp - 0x10]
mov ecx, esi
call fcn.005cc150
push 0x984a54
mov ecx, esi
call fcn.005cbfc0
push dword [ebp - 0xc]
mov ecx, esi
call fcn.005cc840
inc edi
sub edi, dword [ebp + 8]
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
push 0x97a040
lea eax, [ebp - 0x70]
mov dword [ebp - 0x70], 0x9bfdc8
push 0x6c5e84
push eax
mov dword [ebp - 0x6c], 0x6e9
mov dword [ebp - 0x68], 0
call fcn.0042fe30
add esp, 0xc
sub edi, dword [ebp + 8]
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
push edi
mov ecx, esi
call fcn.005c9dd0
add edi, eax
sub edi, dword [ebp + 8]
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
push edi
mov ecx, esi
call fcn.005c93b0
add edi, eax
sub edi, dword [ebp + 8]
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
push edx
push 0x9c0208
call fcn.004414e0
push 0x97a040
lea eax, [ebp - 0x7c]
mov dword [ebp - 0x7c], 0x9bfdc8
push 0x6c5e84
push eax
mov dword [ebp - 0x78], 0x6f7
mov dword [ebp - 0x74], 0
call fcn.0042fe30
add esp, 0x14
sub edi, dword [ebp + 8]
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4