Function at 0x4accf7
Capabilities:
Parse credit card information

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x2c
mov eax, dword [ebp + 8]
and dword [ebp - 0x14], 0
push ebx
push esi
mov ebx, dword [eax]
push edi
mov edi, edx
mov dword [ebp - 0x20], ecx
mov ecx, edi
mov dword [ebp - 0xc], ebx
call fcn.004541bf
mov esi, eax
test bl, 0x40
jne 0x4acd2c
cmp byte [0x6313ce], 0
je 0x4ad0e4
cmp esi, 5
jl 0x4ad0e4
push 5
push str.file:
push edi
call fcn.00589704
add esp, 0xc
test eax, eax
jne 0x4ad0e4
and dword [ebp - 4], eax
or ebx, 0x40
lea eax, [esi + 2]
mov dword [ebp - 0xc], ebx
xor ecx, ecx
cdq
test esi, esi
jle 0x4acd8a
cmp byte [ecx + edi], 0x26
jne 0x4acd6f
xor ebx, ebx
inc ebx
and dword [ebp - 0x18], 0
jmp 0x4acd80
xorps xmm0, xmm0
movlpd qword [ebp - 0x28], xmm0
mov ebx, dword [ebp - 0x24]
mov dword [ebp - 0x18], ebx
mov ebx, dword [ebp - 0x28]
add eax, ebx
adc edx, dword [ebp - 0x18]
inc ecx
cmp ecx, esi
jl 0x4acd60
push edx
push eax
call fcn.00451b08
mov ebx, eax
mov dword [ebp - 8], ebx
pop ecx
pop ecx
test ebx, ebx
jne 0x4acda4
push 7
pop eax
jmp 0x4ad15b
cmp byte [edi + 5], 0x2f
push 5
pop esi
jne 0x4ace06
cmp byte [edi + 6], 0x2f
jne 0x4ace06
lea ecx, [edi + 7]
mov al, byte [ecx]
mov dword [ebp - 0x1c], ecx
push 7
pop esi
test al, al
je 0x4ace06
cmp al, 0x2f
je 0x4acdce
inc esi
mov al, byte [esi + edi]
test al, al
jne 0x4acdc2
cmp esi, 7
je 0x4ace06
cmp esi, 0x10
jne 0x4acdef
push 9
push ecx
push str.localhost
call fcn.00589704
add esp, 0xc
test eax, eax
je 0x4ace06
mov ecx, dword [ebp - 0x1c]
push ecx
lea eax, [esi - 7]
push eax
push str.invalid_uri_authority:__.s
call fcn.004537cb
add esp, 0xc
jmp 0x4ad136
mov bl, byte [esi + edi]
xor edx, edx
mov dword [ebp - 0x10], edx
test bl, bl
je 0x4acf69
cmp bl, 0x23
je 0x4acf57
inc esi
cmp bl, 0x25
jne 0x4aced1
mov cl, byte [esi + edi]
movzx eax, cl
test byte [eax + 0x5ea0f0], 8
je 0x4aced1
movzx eax, byte [esi + edi + 1]
test byte [eax + 0x5ea0f0], 8
je 0x4aced1
movsx edx, byte [esi + edi + 1]
add esi, 2
movsx ecx, cl
mov eax, ecx
mov bl, cl
sar eax, 6
mov cl, dl
and al, 1
movzx eax, al
imul eax, eax, 7
sub bl, al
mov eax, edx
mov edx, dword [ebp - 0x10]
and ebx, 0xf
sar eax, 6
and al, 1
shl ebx, 4
movzx eax, al
imul eax, eax, 7
sub cl, al
and ecx, 0xf
add ebx, ecx
jne 0x4acf3f
jmp 0x4acec8
cmp al, 0x23
je 0x4acf4c
test edx, edx
jne 0x4acea5
cmp al, 0x3f
je 0x4acf4c
cmp edx, 1
jne 0x4aceba
cmp al, 0x3d
je 0x4acf4c
cmp al, 0x26
je 0x4acf4c
cmp edx, 2
jne 0x4acec7
cmp al, 0x26
je 0x4acf4c
inc esi
mov al, byte [esi + edi]
test al, al
jne 0x4ace91
jmp 0x4acf4c
cmp edx, 1
jne 0x4acf24
cmp bl, 0x26
je 0x4acee0
cmp bl, 0x3d
jne 0x4acf3f
mov eax, dword [ebp - 8]
mov ecx, dword [ebp - 4]
cmp byte [eax + ecx - 1], 0
je 0x4acf11
cmp bl, 0x26
jne 0x4acf1a
mov ebx, eax
mov eax, ecx
mov byte [ebx + eax], 0
inc eax
mov dword [ebp - 4], eax
mov eax, ebx
mov ecx, dword [ebp - 4]
jmp 0x4acf20
cmp al, 0x23
je 0x4acf4c
cmp byte [esi + edi - 1], 0x26
je 0x4acf4c
inc esi
mov al, byte [esi + edi]
test al, al
jne 0x4acf05
jmp 0x4acf4c
push 2
pop edx
mov dword [ebp - 0x10], edx
xor bl, bl
jmp 0x4acf45
test edx, edx
jne 0x4acf2d
cmp bl, 0x3f
je 0x4acf37
cmp edx, 2
jne 0x4acf3f
cmp bl, 0x26
jne 0x4acf3f
xor edx, edx
xor bl, bl
inc edx
mov dword [ebp - 0x10], edx
mov eax, dword [ebp - 8]
mov ecx, dword [ebp - 4]
mov byte [eax + ecx], bl
inc ecx
mov dword [ebp - 4], ecx
mov bl, byte [esi + edi]
test bl, bl
jne 0x4ace16
mov ebx, dword [ebp - 8]
mov eax, dword [ebp - 4]
cmp edx, 1
jne 0x4acf6f
mov byte [ebx + eax], 0
inc eax
jmp 0x4acf6f
mov ebx, dword [ebp - 8]
mov eax, dword [ebp - 4]
mov ecx, ebx
mov word [ebx + eax], 0
call fcn.004541bf
lea edi, [ebx + 1]
jmp 0x4ad0bb
mov ecx, edi
call fcn.004541bf
mov esi, eax
lea eax, [edi + 1]
add eax, esi
mov dword [ebp - 4], esi
mov ecx, eax
mov dword [ebp - 8], eax
call fcn.004541bf
mov dword [ebp - 0x1c], eax
cmp esi, 3
jne 0x4acfc5
push esi
push edi
push 0x600ebc
call fcn.00589704
add esp, 0xc
test eax, eax
jne 0x4acfc5
mov eax, dword [ebp - 8]
mov dword [ebp - 0x20], eax
jmp 0x4ad0b7
xor eax, eax
xor esi, esi
and dword [ebp - 0x10], eax
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 4]
cmp eax, 5
jne 0x4ad001
push eax
push edi
push str.cache
call fcn.00589704
add esp, 0xc
test eax, eax
jne 0x4acffe
mov eax, 0x630c38
mov dword [ebp - 0x10], str.cache
mov esi, 0x60000
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 4]
mov dword [ebp - 4], esi
cmp eax, 4
jne 0x4ad03c
push eax
push edi
push str.mode
mov dword [ebp - 4], esi
call fcn.00589704
add esp, 0xc
test eax, eax
jne 0x4ad03c
mov eax, dword [ebp - 0xc]
mov ecx, 0x87
and eax, ecx
mov dword [ebp - 0x10], str.access
mov esi, ecx
mov dword [ebp - 4], eax
mov edi, 0x630c58
jmp 0x4ad03f
mov edi, dword [ebp - 0x18]
test edi, edi
je 0x4ad0b4
xor ecx, ecx
mov dword [ebp - 0x18], ecx
cmp dword [edi], ecx
je 0x4ad083
mov eax, edi
mov eax, dword [eax]
mov ecx, eax
mov dword [ebp - 0x24], eax
call fcn.004541bf
mov ecx, dword [ebp - 0x1c]
cmp ecx, eax
jne 0x4ad074
push ecx
push dword [ebp - 0x24]
push dword [ebp - 8]
call fcn.00589704
add esp, 0xc
test eax, eax
je 0x4ad093
mov eax, dword [ebp - 0x18]
inc eax
mov dword [ebp - 0x18], eax
lea eax, [edi + eax*8]
cmp dword [eax], 0
jne 0x4ad04e
push dword [ebp - 8]
push dword [ebp - 0x10]
push str.no_such__s_mode:__s
jmp 0x4acdf9
mov ecx, dword [ebp - 0x18]
mov ecx, dword [edi + ecx*8 + 4]
test ecx, ecx
je 0x4ad083
mov eax, ecx
and eax, 0xffffff7f
cmp eax, dword [ebp - 4]
jg 0x4ad0c8
not esi
and esi, dword [ebp - 0xc]
or esi, ecx
mov dword [ebp - 0xc], esi
mov eax, dword [ebp - 8]
mov edi, dword [ebp - 0x1c]
inc edi
add edi, eax
cmp byte [edi], 0
jne 0x4acf84
jmp 0x4ad114
push dword [ebp - 8]
push dword [ebp - 0x10]
push str._s_mode_not_allowed:__s
call fcn.004537cb
add esp, 0xc
mov dword [ebp - 0x14], 3
jmp 0x4ad13d
lea eax, [esi + 2]
cdq
push edx
push eax
call fcn.00451b08
mov ebx, eax
pop ecx
pop ecx
test ebx, ebx
je 0x4acd9c
test esi, esi
je 0x4ad10a
push esi
push edi
push ebx
call fcn.00588a70
add esp, 0xc
and dword [ebp - 0xc], 0xffffffbf
mov word [ebx + esi], 0
mov esi, dword [ebp - 0x20]
push esi
call fcn.00451459
pop ecx
mov ecx, eax
mov eax, dword [ebp + 0xc]
mov dword [eax], ecx
test ecx, ecx
jne 0x4ad14b
push esi
push str.no_such_vfs:__s
call fcn.004537cb
pop ecx
pop ecx
mov dword [ebp - 0x14], 1
mov ecx, dword [ebp + 0x14]
mov dword [ecx], eax
push ebx
call fcn.00451b88
pop ecx
xor ebx, ebx
mov ecx, dword [ebp + 8]
mov eax, dword [ebp - 0xc]
mov dword [ecx], eax
mov ecx, dword [ebp + 0x10]
mov eax, dword [ebp - 0x14]
mov dword [ecx], ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret