Function at 0x4ec7e0
Capabilities:
Parse credit card information

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x94
mov eax, dword [0x5bd344]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 0x10]
push ebx
push esi
mov esi, dword [ebp + 0x14]
xor ebx, ebx
mov dword [ebp - 0x84], edx
mov dword [ebp - 0x78], ecx
mov dword [ebp - 0x6c], esi
mov byte [ebp - 0x80], 1
push edi
mov edi, dword [eax]
mov eax, dword [eax + 4]
mov dword [ebp - 0x90], edi
mov dword [ebp - 0x94], eax
test edx, edx
je 0x4ec837
mov al, byte [ecx + ebx]
cmp al, 0x20
je 0x4ec832
cmp al, 9
jl 0x4ec837
cmp al, 0xd
jg 0x4ec837
inc ebx
cmp ebx, edx
jb 0x4ec823
mov edi, dword [ebp + 8]
mov ecx, esi
add edi, ebx
push 0
lea eax, [edi - 1]
push eax
call fcn.004e5610
mov edx, dword [ebp - 0x78]
mov esi, ebx
mov dword [ebp - 0x70], esi
mov al, byte [edx + ebx]
cmp al, 0x3a
jne 0x4ec872
mov ecx, dword [ebp - 0x6c]
xor eax, eax
cmp byte [edx + ebx + 1], 0x3a
setne al
lea eax, [eax*2 + 1]
push eax
jmp 0x4ec8f8
movsx eax, al
test eax, eax
js 0x4ec8b9
push eax
call fcn.00594f55
mov edx, dword [ebp - 0x78]
add esp, 4
test eax, eax
je 0x4ec8b9
cmp byte [edx + ebx + 1], 0x3a
jne 0x4ec8b9
mov al, byte [edx + ebx + 2]
cmp al, 0x20
je 0x4ec8b2
cmp al, 9
jl 0x4ec8a0
cmp al, 0xd
jle 0x4ec8b2
cmp al, 0x5c
jne 0x4ec8b9
movsx ecx, byte [edx + ebx + 3]
call fcn.004a5850
test al, al
je 0x4ec8b9
mov ecx, dword [ebp - 0x6c]
push 2
jmp 0x4ec8f8
cmp byte [edx + ebx], 0x40
jne 0x4ec8d2
push 4
push edi
mov edi, dword [ebp - 0x6c]
mov ecx, edi
call fcn.004e5610
mov edx, dword [ebp - 0x78]
inc ebx
jmp 0x4ec8d5
mov edi, dword [ebp - 0x6c]
mov ecx, dword [ebp - 0x84]
cmp ebx, ecx
jae 0x4ec8f4
nop
mov al, byte [edx + ebx]
cmp al, 0x20
je 0x4ec8ef
cmp al, 9
jl 0x4ec911
cmp al, 0xd
jg 0x4ec911
inc ebx
cmp ebx, ecx
jb 0x4ec8e0
push 0
mov ecx, edi
push dword [ebp + 0xc]
call fcn.004e5610
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.0057e93d
mov esp, ebp
pop ebp
ret
cmp ebx, ecx
jae 0x4ec8f4
mov eax, dword [ebp + 8]
mov dword [ebp - 0x88], esi
cmp ebx, eax
jbe 0x4ec92f
dec eax
mov ecx, edi
push 0
add eax, ebx
push eax
call fcn.004e5610
mov esi, dword [ebp - 0x78]
xor edi, edi
cmp edi, 0x50
jae 0x4ec962
mov al, byte [esi + ebx]
movsx ecx, al
cmp al, 0x20
je 0x4ec962
cmp al, 9
jl 0x4ec94b
cmp al, 0xd
jle 0x4ec962
push ecx
call fcn.005953c5
mov byte [ebp + edi - 0x64], al
inc ebx
add esp, 4
inc edi
cmp ebx, dword [ebp - 0x84]
jb 0x4ec934
mov esi, dword [ebp - 0x70]
mov dword [ebp - 0x74], edi
mov dword [ebp - 0x68], ebx
mov dword [ebp - 0x8c], ebx
cmp edi, 0x51
jae 0x4ed313
mov byte [ebp + edi - 0x64], 0
lea ecx, [ebp - 0x64]
mov edx, 0x44b4f0
xor edi, edi
call fcn.00525120
test eax, eax
je 0x4ed309
mov bl, byte [ebp - 0x64]
cmp bl, 0x5c
je 0x4ed274
cmp bl, 0x2e
je 0x4ed274
cmp bl, 0x3b
je 0x4ed274
cmp bl, 0x22
je 0x4ed274
cmp bl, 0x27
je 0x4ed274
cmp bl, 0x2f
je 0x4ed274
mov ecx, dword [ebp - 0x90]
lea eax, [ebp - 0x64]
push eax
call fcn.00536920
mov ecx, dword [ebp - 0x80]
test al, al
je 0x4ecb6c
test cl, cl
je 0x4ecb6c
mov edx, 0x44b714
lea ecx, [ebp - 0x64]
call fcn.00525120
test eax, eax
je 0x4eca35
mov edx, 0x44b71c
lea ecx, [ebp - 0x64]
call fcn.00525120
test eax, eax
je 0x4eca35
mov edx, 0x44b724
lea ecx, [ebp - 0x64]
call fcn.00525120
test eax, eax
je 0x4eca35
mov edx, 0x44b72c
lea ecx, [ebp - 0x64]
call fcn.00525120
test eax, eax
jne 0x4eca39
mov byte [ebp - 0x80], 0
mov edx, 0x44b730
lea ecx, [ebp - 0x64]
call fcn.00525120
test eax, eax
je 0x4ecaea
mov edx, 0x44b73c
lea ecx, [ebp - 0x64]
call fcn.00525120
test eax, eax
je 0x4ecaea
mov edx, 0x44b744
lea ecx, [ebp - 0x64]
call fcn.00525120
test eax, eax
je 0x4ecaab
mov edx, 0x44b74c
lea ecx, [ebp - 0x64]
call fcn.00525120
test eax, eax
je 0x4ecaab
mov edx, 0x44b750
lea ecx, [ebp - 0x64]
call fcn.00525120
test eax, eax
je 0x4ecaab
mov edx, 0x44b75c
lea ecx, [ebp - 0x64]
call fcn.00525120
test eax, eax
jne 0x4ecb62
mov ebx, dword [ebp - 0x68]
mov esi, ebx
mov edi, dword [ebp - 0x84]
mov dword [ebp - 0x70], esi
cmp ebx, edi
jae 0x4ecb65
mov ecx, dword [ebp - 0x78]
mov al, byte [ecx + esi]
cmp al, 0x20
je 0x4ecadb
cmp al, 9
jl 0x4ecb65
cmp al, 0xd
jg 0x4ecb65
inc esi
mov dword [ebp - 0x70], esi
cmp esi, edi
jb 0x4ecac4
push 2
jmp 0x4ecf06
mov ebx, dword [ebp - 0x68]
mov esi, ebx
mov edi, dword [ebp - 0x84]
mov dword [ebp - 0x70], esi
cmp ebx, edi
jae 0x4ecb65
mov ecx, dword [ebp - 0x78]
nop
mov al, byte [ecx + esi]
cmp al, 0x20
je 0x4ecb0f
cmp al, 9
jl 0x4ecb1e
cmp al, 0xd
jg 0x4ecb1e
inc esi
mov dword [ebp - 0x70], esi
cmp esi, edi
jb 0x4ecb00
push 2
jmp 0x4ecf06
cmp esi, edi
jae 0x4ecb65
mov al, byte [ecx + esi]
cmp al, 0x20
je 0x4ecb40
cmp al, 9
jl 0x4ecb31
cmp al, 0xd
jle 0x4ecb40
inc esi
mov dword [ebp - 0x70], esi
cmp esi, edi
jb 0x4ecb22
push 2
jmp 0x4ecf06
cmp esi, edi
jae 0x4ecb65
mov al, byte [ecx + esi]
cmp al, 0x20
je 0x4ecb53
cmp al, 9
jl 0x4ecb58
cmp al, 0xd
jg 0x4ecb58
inc esi
cmp esi, edi
jb 0x4ecb44
mov dword [ebp - 0x70], esi
push 2
jmp 0x4ecf06
mov ebx, dword [ebp - 0x68]
push 2
jmp 0x4ecf06
cmp bl, 0x25
je 0x4ed075
cmp bl, 0x21
je 0x4ece79
cmp bl, 0x3d
je 0x4ece70
cmp bl, 0x2b
je 0x4ece70
cmp bl, 0x3e
je 0x4ece70
cmp bl, 0x3c
je 0x4ece70
cmp bl, 0x7c
je 0x4ece70
cmp bl, 0x3f
je 0x4ece70
cmp bl, 0x2a
je 0x4ece70
test cl, cl
je 0x4ece70
mov edx, dword [ebp - 0x74]
xor al, al
mov ebx, 2
mov byte [ebp - 0x79], al
cmp edx, ebx
jbe 0x4eccc7
nop word [eax + eax]
cmp ebx, 7
jae 0x4eccc7
test al, al
jne 0x4ed170
xor edi, edi
mov dword [ebp - 0x88], edi
test ebx, ebx
je 0x4ecc1f
push ebx
lea eax, [ebp - 0x64]
push eax
lea eax, [ebp - 0x10]
push eax
call fcn.00582b50
add esp, 0xc
mov edi, ebx
mov dword [ebp - 0x88], edi
cmp ebx, 0xa
jae 0x4ed313
mov ecx, dword [ebp - 0x90]
lea eax, [ebp - 0x10]
push eax
mov byte [ebp + edi - 0x10], 0
call fcn.00536920
test al, al
je 0x4eccb8
mov al, byte [ebp + edi - 0x64]
cmp al, 0x3d
je 0x4ecc73
cmp al, 0x2b
je 0x4ecc73
cmp al, 0x3e
je 0x4ecc73
cmp al, 0x3c
je 0x4ecc73
cmp al, 0x7c
je 0x4ecc73
cmp al, 0x3f
je 0x4ecc73
cmp al, 0x2a
je 0x4ecc73
cmp al, 0x5c
je 0x4ecc73
cmp al, 0x2e
je 0x4ecc73
cmp al, 0x3b
je 0x4ecc73
cmp al, 0x22
je 0x4ecc73
cmp al, 0x27
je 0x4ecc73
cmp al, 0x2f
jne 0x4eccb8
mov edx, 0x44b714
mov byte [ebp - 0x79], 1
lea ecx, [ebp - 0x10]
call fcn.00525120
mov ecx, dword [ebp - 0x68]
mov edi, eax
mov eax, dword [ebp - 0x88]
sub eax, dword [ebp - 0x74]
add ecx, eax
mov eax, dword [ebp + 8]
mov dword [ebp - 0x68], ecx
dec eax
add ecx, eax
push 2
push ecx
mov ecx, dword [ebp - 0x6c]
call fcn.004e5610
mov edx, dword [ebp - 0x80]
xor ecx, ecx
test edi, edi
movzx eax, dl
cmovne ecx, eax
mov dword [ebp - 0x80], ecx
mov edx, dword [ebp - 0x74]
inc ebx
mov al, byte [ebp - 0x79]
cmp ebx, edx
jb 0x4ecbe0
test al, al
jne 0x4ed170
mov ebx, dword [ebp - 0x68]
xor ecx, ecx
mov eax, ebx
sub eax, edx
cmp esi, eax
jne 0x4ece15
test edx, edx
je 0x4ecd29
mov al, byte [ebp + ecx - 0x64]
cmp al, 0x25
je 0x4ecd29
cmp al, 0x21
je 0x4ecd29
cmp al, 0x3d
je 0x4ecd29
cmp al, 0x2b
je 0x4ecd29
cmp al, 0x3e
je 0x4ecd29
cmp al, 0x3c
je 0x4ecd29
cmp al, 0x7c
je 0x4ecd29
cmp al, 0x3f
je 0x4ecd29
cmp al, 0x2a
je 0x4ecd29
cmp al, 0x5c
je 0x4ecd29
cmp al, 0x2e
je 0x4ecd29
cmp al, 0x3b
je 0x4ecd29
cmp al, 0x22
je 0x4ecd29
cmp al, 0x27
je 0x4ecd29
cmp al, 0x2f
je 0x4ecd29
inc ecx
cmp ecx, edx
jb 0x4ecce4
sub ecx, edx
mov edx, 0x44b760
add ebx, ecx
lea ecx, [ebp - 0x64]
mov esi, ebx
mov dword [ebp - 0x70], esi
call fcn.00525120
mov edx, dword [ebp - 0x80]
lea ecx, [ebp - 0x64]
neg eax
sbb al, al
and al, dl
mov edx, 0x44b768
mov byte [ebp - 0x80], al
call fcn.00525120
test eax, eax
jne 0x4ecdc7
mov ecx, dword [ebp - 0x84]
mov edx, dword [ebp - 0x78]
mov dword [ebp - 0x70], esi
cmp ebx, ecx
jae 0x4ecd87
nop dword [eax]
mov al, byte [edx + esi]
cmp al, 0x20
je 0x4ecd7f
cmp al, 9
jl 0x4ecd84
cmp al, 0xd
jg 0x4ecd84
inc esi
cmp esi, ecx
jb 0x4ecd70
mov dword [ebp - 0x70], esi
cmp byte [edx + esi], 0x2f
jne 0x4ecdc7
cmp esi, ecx
jae 0x4ecdc7
mov al, byte [edx + esi]
cmp al, 0x20
je 0x4ecdaa
cmp al, 9
jl 0x4ecda0
cmp al, 0xd
jle 0x4ecdaa
inc esi
mov dword [ebp - 0x70], esi
cmp esi, ecx
jb 0x4ecd91
jmp 0x4ecdc7
cmp esi, ecx
jae 0x4ecdc7
nop
mov al, byte [edx + esi]
cmp al, 0x20
je 0x4ecdbf
cmp al, 9
jl 0x4ecdc4
cmp al, 0xd
jg 0x4ecdc4
inc esi
cmp esi, ecx
jb 0x4ecdb0
mov dword [ebp - 0x70], esi
mov edi, dword [ebp + 8]
mov eax, dword [ebp - 0x94]
dec edi
add edi, ebx
cmp dword [eax + 8], 0
jne 0x4ecdef
mov eax, 5
push eax
push edi
mov edi, dword [ebp - 0x6c]
mov ecx, edi
call fcn.004e5610
jmp 0x4ed176
lea ecx, [ebp - 0x64]
push ecx
mov ecx, eax
call fcn.00536920
movzx eax, al
neg eax
sbb eax, eax
and eax, 5
push eax
push edi
mov edi, dword [ebp - 0x6c]
mov ecx, edi
call fcn.004e5610
jmp 0x4ed176
test edx, edx
je 0x4ece65
nop dword [eax]
mov al, byte [ebp + ecx - 0x64]
cmp al, 0x25
je 0x4ece65
cmp al, 0x21
je 0x4ece65
cmp al, 0x3d
je 0x4ece65
cmp al, 0x2b
je 0x4ece65
cmp al, 0x3e
je 0x4ece65
cmp al, 0x3c
je 0x4ece65
cmp al, 0x7c
je 0x4ece65
cmp al, 0x3f
je 0x4ece65
cmp al, 0x2a
je 0x4ece65
cmp al, 0x5c
je 0x4ece65
cmp al, 0x2e
je 0x4ece65
cmp al, 0x3b
je 0x4ece65
cmp al, 0x22
je 0x4ece65
cmp al, 0x27
je 0x4ece65
cmp al, 0x2f
je 0x4ece65
inc ecx
cmp ecx, edx
jb 0x4ece20
sub ecx, edx
add ebx, ecx
push 0
jmp 0x4ecf06
cmp bl, 0x21
jne 0x4ecf1c
mov ebx, dword [ebp - 0x68]
mov edi, ebx
mov eax, dword [ebp + 8]
sub edi, dword [ebp - 0x74]
dec eax
mov ecx, dword [ebp - 0x6c]
add eax, edi
push 0
push eax
call fcn.004e5610
mov edx, dword [ebp - 0x74]
mov ecx, 1
cmp edx, ecx
jbe 0x4ecee1
nop
mov al, byte [ebp + ecx - 0x64]
cmp al, 0x21
je 0x4ecee1
cmp al, 0x3d
je 0x4ecee1
cmp al, 0x2b
je 0x4ecee1
cmp al, 0x3e
je 0x4ecee1
cmp al, 0x3c
je 0x4ecee1
cmp al, 0x7c
je 0x4ecee1
cmp al, 0x3f
je 0x4ecee1
cmp al, 0x2a
je 0x4ecee1
cmp al, 0x5c
je 0x4ecee1
cmp al, 0x2e
je 0x4ecee1
cmp al, 0x3b
je 0x4ecee1
cmp al, 0x22
je 0x4ecee1
cmp al, 0x27
je 0x4ecee1
cmp al, 0x2f
je 0x4ecee1
inc ecx
cmp ecx, edx
jb 0x4ecea0
cmp byte [ebp + ecx - 0x64], 0x21
jne 0x4ed173
sub ecx, edx
inc ecx
cmp esi, edi
jne 0x4ecefc
add ebx, ecx
mov esi, ebx
mov dword [ebp - 0x70], esi
jmp 0x4ecf04
mov ebx, dword [ebp - 0x8c]
add ebx, ecx
push 6
mov eax, dword [ebp + 8]
mov edi, dword [ebp - 0x6c]
dec eax
add eax, ebx
mov ecx, edi
push eax
call fcn.004e5610
jmp 0x4ed176
cmp bl, 0x3d
je 0x4ecfa3
cmp bl, 0x2b
je 0x4ecfa3
cmp bl, 0x3e
je 0x4ecfa3
cmp bl, 0x3c
je 0x4ecfa3
cmp bl, 0x7c
je 0x4ecfa3
cmp bl, 0x3f
je 0x4ecfa3
cmp bl, 0x2a
je 0x4ecfa3
mov ecx, dword [ebp - 0x74]
test ecx, ecx
je 0x4ecf95
nop word [eax + eax]
mov al, byte [ebp + edi - 0x64]
cmp al, 0x25
je 0x4ecf95
cmp al, 0x21
je 0x4ecf95
cmp al, 0x3d
je 0x4ecf95
cmp al, 0x2b
je 0x4ecf95
cmp al, 0x3e
je 0x4ecf95
cmp al, 0x3c
je 0x4ecf95
cmp al, 0x7c
je 0x4ecf95
cmp al, 0x3f
je 0x4ecf95
cmp al, 0x2a
je 0x4ecf95
cmp al, 0x5c
je 0x4ecf95
cmp al, 0x2e
je 0x4ecf95
cmp al, 0x3b
je 0x4ecf95
cmp al, 0x22
je 0x4ecf95
cmp al, 0x27
je 0x4ecf95
cmp al, 0x2f
je 0x4ecf95
inc edi
cmp edi, ecx
jb 0x4ecf50
mov ebx, dword [ebp - 0x68]
sub edi, ecx
add ebx, edi
push 0
jmp 0x4ecf06
mov edi, dword [ebp - 0x68]
sub edi, dword [ebp - 0x74]
mov eax, dword [ebp + 8]
mov ecx, dword [ebp - 0x6c]
add eax, edi
mov dword [ebp - 0x74], eax
dec eax
push 0
push eax
call fcn.004e5610
cmp bl, 0x3d
jne 0x4ed010
cmp byte [ebp - 0x63], bl
jne 0x4ed05d
mov eax, dword [ebp - 0x68]
mov esi, eax
mov edx, dword [ebp - 0x84]
mov dword [ebp - 0x70], eax
cmp eax, edx
jae 0x4ecff7
mov ecx, dword [ebp - 0x78]
mov al, byte [ecx + esi]
cmp al, 0x20
je 0x4ecfef
cmp al, 9
jl 0x4ecff4
cmp al, 0xd
jg 0x4ecff4
inc esi
cmp esi, edx
jb 0x4ecfe0
mov dword [ebp - 0x70], esi
mov eax, dword [ebp - 0x74]
lea ebx, [edi + 2]
mov edi, dword [ebp - 0x6c]
inc eax
push 7
push eax
mov ecx, edi
call fcn.004e5610
jmp 0x4ed176
cmp bl, 0x7c
jne 0x4ed049
mov edx, dword [ebp - 0x84]
lea ebx, [edi + 1]
mov esi, ebx
mov dword [ebp - 0x70], ebx
cmp esi, edx
jae 0x4ed060
mov ecx, dword [ebp - 0x78]
nop word [eax + eax]
mov al, byte [ecx + esi]
cmp al, 0x20
je 0x4ed03f
cmp al, 9
jl 0x4ed044
cmp al, 0xd
jg 0x4ed044
inc esi
cmp esi, edx
jb 0x4ed030
mov dword [ebp - 0x70], esi
jmp 0x4ed060
mov eax, dword [ebp - 0x80]
cmp bl, 0x3e
movzx eax, al
mov ecx, 1
cmove eax, ecx
mov dword [ebp - 0x80], eax
lea ebx, [edi + 1]
mov eax, dword [ebp - 0x74]
mov edi, dword [ebp - 0x6c]
mov ecx, edi
push 7
push eax
call fcn.004e5610
jmp 0x4ed176
mov ebx, dword [ebp - 0x68]
mov eax, dword [ebp + 8]
sub ebx, dword [ebp - 0x74]
dec eax
mov ecx, dword [ebp - 0x6c]
add eax, ebx
push 0
push eax
call fcn.004e5610
mov edx, dword [ebp - 0x74]
mov edi, 1
cmp edx, edi
jbe 0x4ed0d9
mov al, byte [ebp + edi - 0x64]
cmp al, 0x25
je 0x4ed0d9
cmp al, 0x3d
je 0x4ed0d9
cmp al, 0x2b
je 0x4ed0d9
cmp al, 0x3e
je 0x4ed0d9
cmp al, 0x3c
je 0x4ed0d9
cmp al, 0x7c
je 0x4ed0d9
cmp al, 0x3f
je 0x4ed0d9
cmp al, 0x2a
je 0x4ed0d9
cmp al, 0x5c
je 0x4ed0d9
cmp al, 0x2e
je 0x4ed0d9
cmp al, 0x3b
je 0x4ed0d9
cmp al, 0x22
je 0x4ed0d9
cmp al, 0x27
je 0x4ed0d9
cmp al, 0x2f
je 0x4ed0d9
inc edi
cmp edi, edx
jb 0x4ed098
mov cl, byte [ebp - 0x63]
mov al, cl
sub al, 0x30
cmp al, 9
jbe 0x4ed0e9
cmp cl, 0x2a
jne 0x4ed11e
cmp byte [ebp + edi - 0x64], 0x25
je 0x4ed11e
mov eax, dword [ebp + 8]
lea esi, [ebx + 2]
mov edi, dword [ebp - 0x6c]
inc eax
push 6
add eax, ebx
mov dword [ebp - 0x68], esi
push eax
mov ecx, edi
call fcn.004e5610
cmp dword [ebp - 0x88], ebx
mov ebx, dword [ebp - 0x68]
cmovne esi, dword [ebp - 0x88]
mov dword [ebp - 0x70], esi
jmp 0x4ed176
cmp edx, 1
jbe 0x4ed128
cmp cl, 0x7e
je 0x4ed13d
mov al, byte [ebp - 0x62]
cmp edx, 2
jbe 0x4ed1a8
cmp cl, 0x25
jne 0x4ed1ad
cmp al, 0x7e
jne 0x4ed1d7
mov eax, dword [ebp - 0x68]
sub edi, edx
mov ecx, dword [ebp + 8]
add eax, edi
dec ecx
mov dword [ebp - 0x68], eax
add eax, ecx
mov ecx, dword [ebp - 0x6c]
push 6
push eax
call fcn.004e5610
mov esi, dword [ebp - 0x8c]
add esi, edi
cmp dword [ebp - 0x88], ebx
cmovne esi, dword [ebp - 0x88]
mov dword [ebp - 0x70], esi
mov ebx, dword [ebp - 0x68]
mov edi, dword [ebp - 0x6c]
mov ecx, dword [ebp - 0x84]
cmp ebx, ecx
jae 0x4ec8f4
mov eax, dword [ebp - 0x78]
mov al, byte [eax + ebx]
cmp al, 0x20
je 0x4ed19e
cmp al, 9
jl 0x4ec915
cmp al, 0xd
jg 0x4ec915
inc ebx
cmp ebx, ecx
jb 0x4ed184
jmp 0x4ec8f4
cmp cl, 0x25
je 0x4ed1d7
cmp byte [ebp + edi - 0x64], 0x25
jne 0x4ed1d7
sub edi, edx
inc edi
cmp esi, ebx
jne 0x4ed1ca
mov ebx, dword [ebp - 0x68]
add ebx, edi
mov esi, ebx
mov dword [ebp - 0x70], esi
jmp 0x4ecf04
mov ebx, dword [ebp - 0x8c]
add ebx, edi
jmp 0x4ecf04
cmp edx, 2
jbe 0x4ed170
cmp cl, 0x25
jne 0x4ed170
cmp al, cl
je 0x4ed170
cmp al, 0x3d
je 0x4ed170
cmp al, 0x2b
je 0x4ed170
cmp al, 0x3e
je 0x4ed170
cmp al, 0x3c
je 0x4ed170
cmp al, 0x7c
je 0x4ed170
cmp al, 0x3f
je 0x4ed170
cmp al, 0x2a
je 0x4ed170
cmp al, 0x5c
je 0x4ed170
cmp al, 0x2e
je 0x4ed170
cmp al, 0x3b
je 0x4ed170
cmp al, 0x22
je 0x4ed170
cmp al, 0x27
je 0x4ed170
mov edi, dword [ebp - 0x6c]
cmp al, 0x2f
je 0x4ed26c
mov eax, dword [ebp + 8]
lea esi, [ebx + 3]
add eax, 2
mov dword [ebp - 0x68], esi
push 6
add eax, ebx
mov ecx, edi
push eax
call fcn.004e5610
cmp dword [ebp - 0x88], ebx
cmovne esi, dword [ebp - 0x88]
mov dword [ebp - 0x70], esi
mov ebx, dword [ebp - 0x68]
jmp 0x4ed176
mov eax, dword [ebp - 0x68]
sub eax, dword [ebp - 0x74]
mov dword [ebp - 0x68], eax
cmp esi, eax
jne 0x4ed2ec
cmp bl, 0x3a
je 0x4ed290
cmp bl, 0x5c
je 0x4ed290
cmp bl, 0x2e
jne 0x4ed2ec
mov ebx, dword [ebp - 0x68]
mov edi, dword [ebp + 8]
inc ebx
mov eax, dword [ebp - 0x94]
dec edi
add edi, ebx
cmp dword [eax + 8], 0
jne 0x4ed2c1
mov eax, 5
mov esi, ebx
push eax
push edi
mov edi, dword [ebp - 0x6c]
mov ecx, edi
mov dword [ebp - 0x70], esi
call fcn.004e5610
jmp 0x4ed176
lea ecx, [ebp - 0x64]
push ecx
mov ecx, eax
call fcn.00536920
movzx eax, al
mov esi, ebx
neg eax
mov dword [ebp - 0x70], esi
sbb eax, eax
and eax, 5
push eax
push edi
mov edi, dword [ebp - 0x6c]
mov ecx, edi
call fcn.004e5610
jmp 0x4ed176
mov ebx, dword [ebp - 0x68]
xor eax, eax
mov edi, dword [ebp + 8]
inc ebx
dec edi
add edi, ebx
push eax
push edi
mov edi, dword [ebp - 0x6c]
mov ecx, edi
call fcn.004e5610
jmp 0x4ed176
mov ecx, dword [ebp - 0x6c]
push 1
jmp 0x4ec8f8
call fcn.0057ea74
int3