Function at 0x180291360
Capabilities:
Parse credit card information

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbp
push rdi
sub rsp, 0x468
lea rbp, [rsp + 0x20]
lea rcx, reloc.WS2_32.dll_accept
call fcn.1801af47e
mov dword [rbp + 4], 0
mov rax, qword [rbp + 0x470]
mov eax, dword [rax]
mov dword [rbp + 0x24], eax
mov rax, qword [rbp + 0x460]
mov qword [rbp + 0x48], rax
mov rcx, qword [rbp + 0x468]
call fcn.1802a9190
mov dword [rbp + 0xa4], eax
mov eax, dword [rbp + 0x24]
and eax, 0x40
test eax, eax
jne 0x1802913d7
movzx eax, byte [0x1805ab016]
test eax, eax
je 0x180291c69
cmp dword [rbp + 0xa4], 5
jl 0x180291c69
mov r8d, 5
lea rdx, str.file:
mov rcx, qword [rbp + 0x468]
call fcn.1801ac04e
test eax, eax
jne 0x180291c69
mov dword [rbp + 0x124], 0
mov eax, dword [rbp + 0xa4]
add eax, 8
cdqe
mov qword [rbp + 0x148], rax
mov eax, dword [rbp + 0x24]
or eax, 0x40
mov dword [rbp + 0x24], eax
mov dword [rbp + 0x104], 0
jmp 0x180291444
mov eax, dword [rbp + 0x104]
inc eax
mov dword [rbp + 0x104], eax
mov eax, dword [rbp + 0xa4]
cmp dword [rbp + 0x104], eax
jge 0x18029149e
movsxd rax, dword [rbp + 0x104]
mov rcx, qword [rbp + 0x468]
movsx eax, byte [rcx + rax]
cmp eax, 0x26
jne 0x180291476
mov qword [rbp + 0x438], 1
jmp 0x180291481
mov qword [rbp + 0x438], 0
mov rax, qword [rbp + 0x438]
mov rcx, qword [rbp + 0x148]
add rcx, rax
mov rax, rcx
mov qword [rbp + 0x148], rax
jmp 0x180291436
mov rcx, qword [rbp + 0x148]
call fcn.1801ab446
mov qword [rbp + 0x68], rax
cmp qword [rbp + 0x68], 0
jne 0x1802914bf
mov eax, 7
jmp 0x180291d70
mov r8d, 4
xor edx, edx
mov rcx, qword [rbp + 0x68]
call fcn.1801adf07
mov rax, qword [rbp + 0x68]
add rax, 4
mov qword [rbp + 0x68], rax
mov dword [rbp + 0x104], 5
mov eax, 1
imul rax, rax, 5
mov rcx, qword [rbp + 0x468]
movsx eax, byte [rcx + rax]
cmp eax, 0x2f
jne 0x1802915ee
mov eax, 1
imul rax, rax, 6
mov rcx, qword [rbp + 0x468]
movsx eax, byte [rcx + rax]
cmp eax, 0x2f
jne 0x1802915ee
mov dword [rbp + 0x104], 7
movsxd rax, dword [rbp + 0x104]
mov rcx, qword [rbp + 0x468]
movsx eax, byte [rcx + rax]
test eax, eax
je 0x180291567
movsxd rax, dword [rbp + 0x104]
mov rcx, qword [rbp + 0x468]
movsx eax, byte [rcx + rax]
cmp eax, 0x2f
je 0x180291567
mov eax, dword [rbp + 0x104]
inc eax
mov dword [rbp + 0x104], eax
jmp 0x18029152a
cmp dword [rbp + 0x104], 7
je 0x1802915ee
cmp dword [rbp + 0x104], 0x10
jne 0x1802915a8
mov eax, 1
imul rax, rax, 7
mov rcx, qword [rbp + 0x468]
add rcx, rax
mov rax, rcx
mov r8d, 9
mov rdx, rax
lea rcx, [0x18053dca0]
call fcn.1801ac04e
test eax, eax
je 0x1802915ee
mov eax, 1
imul rax, rax, 7
mov rcx, qword [rbp + 0x468]
add rcx, rax
mov rax, rcx
mov ecx, dword [rbp + 0x104]
sub ecx, 7
mov r8, rax
mov edx, ecx
lea rcx, str.invalid_uri_authority:__.s
call fcn.1801aeab0
mov rcx, qword [rbp + 0x488]
mov qword [rcx], rax
mov dword [rbp + 4], 1
jmp 0x180291d3c
mov dword [rbp + 0xe4], 0
movsxd rax, dword [rbp + 0x104]
mov rcx, qword [rbp + 0x468]
movzx eax, byte [rcx + rax]
mov byte [rbp + 0x84], al
movsx eax, byte [rbp + 0x84]
test eax, eax
je 0x180291914
movsx eax, byte [rbp + 0x84]
cmp eax, 0x23
je 0x180291914
mov eax, dword [rbp + 0x104]
inc eax
mov dword [rbp + 0x104], eax
movsx eax, byte [rbp + 0x84]
cmp eax, 0x25
jne 0x1802917d8
movsxd rax, dword [rbp + 0x104]
mov rcx, qword [rbp + 0x468]
movzx eax, byte [rcx + rax]
lea rcx, [0x1805178a0]
movzx eax, byte [rcx + rax]
and eax, 8
test eax, eax
je 0x1802917d8
mov eax, dword [rbp + 0x104]
inc eax
cdqe
mov rcx, qword [rbp + 0x468]
movzx eax, byte [rcx + rax]
lea rcx, [0x1805178a0]
movzx eax, byte [rcx + rax]
and eax, 8
test eax, eax
je 0x1802917d8
movsxd rax, dword [rbp + 0x104]
mov rcx, qword [rbp + 0x468]
movzx eax, byte [rcx + rax]
mov byte [rbp + 0x434], al
mov eax, dword [rbp + 0x104]
inc eax
mov dword [rbp + 0x104], eax
movsx eax, byte [rbp + 0x434]
mov ecx, eax
call fcn.180281b90
movzx eax, al
shl eax, 4
mov dword [rbp + 0x164], eax
movsxd rax, dword [rbp + 0x104]
mov rcx, qword [rbp + 0x468]
movzx eax, byte [rcx + rax]
mov byte [rbp + 0x434], al
mov eax, dword [rbp + 0x104]
inc eax
mov dword [rbp + 0x104], eax
movsx eax, byte [rbp + 0x434]
mov ecx, eax
call fcn.180281b90
movzx eax, al
mov ecx, dword [rbp + 0x164]
add ecx, eax
mov eax, ecx
mov dword [rbp + 0x164], eax
cmp dword [rbp + 0x164], 0
jne 0x1802917c6
movsxd rax, dword [rbp + 0x104]
mov rcx, qword [rbp + 0x468]
movzx eax, byte [rcx + rax]
mov byte [rbp + 0x84], al
movsx eax, byte [rbp + 0x84]
test eax, eax
je 0x1802917c1
movsx eax, byte [rbp + 0x84]
cmp eax, 0x23
je 0x1802917c1
cmp dword [rbp + 0xe4], 0
jne 0x180291778
movsx eax, byte [rbp + 0x84]
cmp eax, 0x3f
je 0x1802917c1
cmp dword [rbp + 0xe4], 1
jne 0x180291799
movsx eax, byte [rbp + 0x84]
cmp eax, 0x3d
je 0x1802917c1
movsx eax, byte [rbp + 0x84]
cmp eax, 0x26
je 0x1802917c1
cmp dword [rbp + 0xe4], 2
jne 0x1802917ae
movsx eax, byte [rbp + 0x84]
cmp eax, 0x26
je 0x1802917c1
mov eax, dword [rbp + 0x104]
inc eax
mov dword [rbp + 0x104], eax
jmp 0x180291734
jmp 0x1802915f8
movzx eax, byte [rbp + 0x164]
mov byte [rbp + 0x84], al
jmp 0x1802918ec
cmp dword [rbp + 0xe4], 1
jne 0x1802918b1
movsx eax, byte [rbp + 0x84]
cmp eax, 0x26
je 0x180291801
movsx eax, byte [rbp + 0x84]
cmp eax, 0x3d
jne 0x1802918b1
mov eax, dword [rbp + 0x124]
dec eax
cdqe
mov rcx, qword [rbp + 0x68]
movsx eax, byte [rcx + rax]
test eax, eax
jne 0x180291873
movsxd rax, dword [rbp + 0x104]
mov rcx, qword [rbp + 0x468]
movsx eax, byte [rcx + rax]
test eax, eax
je 0x18029186e
movsxd rax, dword [rbp + 0x104]
mov rcx, qword [rbp + 0x468]
movsx eax, byte [rcx + rax]
cmp eax, 0x23
je 0x18029186e
mov eax, dword [rbp + 0x104]
dec eax
cdqe
mov rcx, qword [rbp + 0x468]
movsx eax, byte [rcx + rax]
cmp eax, 0x26
je 0x18029186e
mov eax, dword [rbp + 0x104]
inc eax
mov dword [rbp + 0x104], eax
jmp 0x180291817
jmp 0x1802915f8
movsx eax, byte [rbp + 0x84]
cmp eax, 0x26
jne 0x18029189e
movsxd rax, dword [rbp + 0x124]
mov rcx, qword [rbp + 0x68]
mov byte [rcx + rax], 0
mov eax, dword [rbp + 0x124]
inc eax
mov dword [rbp + 0x124], eax
jmp 0x1802918a8
mov dword [rbp + 0xe4], 2
mov byte [rbp + 0x84], 0
jmp 0x1802918ec
cmp dword [rbp + 0xe4], 0
jne 0x1802918c6
movsx eax, byte [rbp + 0x84]
cmp eax, 0x3f
je 0x1802918db
cmp dword [rbp + 0xe4], 2
jne 0x1802918ec
movsx eax, byte [rbp + 0x84]
cmp eax, 0x26
jne 0x1802918ec
mov byte [rbp + 0x84], 0
mov dword [rbp + 0xe4], 1
movsxd rax, dword [rbp + 0x124]
mov rcx, qword [rbp + 0x68]
movzx edx, byte [rbp + 0x84]
mov byte [rcx + rax], dl
mov eax, dword [rbp + 0x124]
inc eax
mov dword [rbp + 0x124], eax
jmp 0x1802915f8
cmp dword [rbp + 0xe4], 1
jne 0x18029193a
movsxd rax, dword [rbp + 0x124]
mov rcx, qword [rbp + 0x68]
mov byte [rcx + rax], 0
mov eax, dword [rbp + 0x124]
inc eax
mov dword [rbp + 0x124], eax
movsxd rax, dword [rbp + 0x124]
mov rcx, qword [rbp + 0x68]
add rcx, rax
mov rax, rcx
mov r8d, 4
xor edx, edx
mov rcx, rax
call fcn.1801adf07
mov rcx, qword [rbp + 0x68]
call fcn.1802a9190
inc eax
cdqe
mov rcx, qword [rbp + 0x68]
add rcx, rax
mov rax, rcx
mov qword [rbp + 0xc8], rax
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rbp + 0xc8]
movsx eax, byte [rcx + rax]
test eax, eax
je 0x180291c64
mov rcx, qword [rbp + 0xc8]
call fcn.1802a9190
mov dword [rbp + 0x184], eax
mov eax, dword [rbp + 0x184]
inc eax
cdqe
mov rcx, qword [rbp + 0xc8]
add rcx, rax
mov rax, rcx
mov qword [rbp + 0x1a8], rax
mov rcx, qword [rbp + 0x1a8]
call fcn.1802a9190
mov dword [rbp + 0x1c4], eax
cmp dword [rbp + 0x184], 3
jne 0x180291a0d
mov r8d, 3
mov rdx, qword [rbp + 0xc8]
lea rcx, [0x18053dcd4]
call fcn.1801ac04e
test eax, eax
jne 0x180291a0d
mov rax, qword [rbp + 0x1a8]
mov qword [rbp + 0x48], rax
jmp 0x180291c41
mov qword [rbp + 0x1e8], 0
mov qword [rbp + 0x208], 0
mov dword [rbp + 0x224], 0
mov dword [rbp + 0x244], 0
cmp dword [rbp + 0x184], 5
jne 0x180291a8f
mov r8d, 5
mov rdx, qword [rbp + 0xc8]
lea rcx, str.cache
call fcn.1801ac04e
test eax, eax
jne 0x180291a8f
mov dword [rbp + 0x224], 0x60000
lea rax, str.shared
mov qword [rbp + 0x1e8], rax
mov eax, dword [rbp + 0x224]
mov dword [rbp + 0x244], eax
lea rax, str.cache
mov qword [rbp + 0x208], rax
cmp dword [rbp + 0x184], 4
jne 0x180291aee
mov r8d, 4
mov rdx, qword [rbp + 0xc8]
lea rcx, str.mode
call fcn.1801ac04e
test eax, eax
jne 0x180291aee
mov dword [rbp + 0x224], Ordinal_143
lea rax, [0x1805adf40]
mov qword [rbp + 0x1e8], rax
mov eax, dword [rbp + 0x24]
mov ecx, dword [rbp + 0x224]
and ecx, eax
mov eax, ecx
mov dword [rbp + 0x244], eax
lea rax, str.access
mov qword [rbp + 0x208], rax
cmp qword [rbp + 0x1e8], 0
je 0x180291c41
mov dword [rbp + 0x284], 0
mov dword [rbp + 0x264], 0
jmp 0x180291b20
mov eax, dword [rbp + 0x264]
inc eax
mov dword [rbp + 0x264], eax
movsxd rax, dword [rbp + 0x264]
imul rax, rax, 0x10
mov rcx, qword [rbp + 0x1e8]
cmp qword [rcx + rax], 0
je 0x180291bae
movsxd rax, dword [rbp + 0x264]
imul rax, rax, 0x10
mov rcx, qword [rbp + 0x1e8]
mov rax, qword [rcx + rax]
mov qword [rbp + 0x2a8], rax
mov rcx, qword [rbp + 0x2a8]
call fcn.1802a9190
cmp dword [rbp + 0x1c4], eax
jne 0x180291ba9
movsxd rax, dword [rbp + 0x1c4]
mov r8, rax
mov rdx, qword [rbp + 0x2a8]
mov rcx, qword [rbp + 0x1a8]
call fcn.1801ac04e
test eax, eax
jne 0x180291ba9
movsxd rax, dword [rbp + 0x264]
imul rax, rax, 0x10
mov rcx, qword [rbp + 0x1e8]
mov eax, dword [rcx + rax + 8]
mov dword [rbp + 0x284], eax
jmp 0x180291bae
jmp 0x180291b12
cmp dword [rbp + 0x284], 0
jne 0x180291be7
mov r8, qword [rbp + 0x1a8]
mov rdx, qword [rbp + 0x208]
lea rcx, str.no_such__s_mode:__s
call fcn.1801aeab0
mov rcx, qword [rbp + 0x488]
mov qword [rcx], rax
mov dword [rbp + 4], 1
jmp 0x180291d3c
mov eax, dword [rbp + 0x284]
btr eax, 7
cmp eax, dword [rbp + 0x244]
jle 0x180291c29
mov r8, qword [rbp + 0x1a8]
mov rdx, qword [rbp + 0x208]
lea rcx, str._s_mode_not_allowed:__s
call fcn.1801aeab0
mov rcx, qword [rbp + 0x488]
mov qword [rcx], rax
mov dword [rbp + 4], 3
jmp 0x180291d3c
mov eax, dword [rbp + 0x224]
not eax
mov ecx, dword [rbp + 0x24]
and ecx, eax
mov eax, ecx
or eax, dword [rbp + 0x284]
mov dword [rbp + 0x24], eax
mov eax, dword [rbp + 0x1c4]
inc eax
cdqe
mov rcx, qword [rbp + 0x1a8]
add rcx, rax
mov rax, rcx
mov qword [rbp + 0xc8], rax
jmp 0x180291979
jmp 0x180291cfb
mov eax, dword [rbp + 0xa4]
add eax, 8
cdqe
mov rcx, rax
call fcn.1801ab446
mov qword [rbp + 0x68], rax
cmp qword [rbp + 0x68], 0
jne 0x180291c91
mov eax, 7
jmp 0x180291d70
mov r8d, 4
xor edx, edx
mov rcx, qword [rbp + 0x68]
call fcn.1801adf07
mov rax, qword [rbp + 0x68]
add rax, 4
mov qword [rbp + 0x68], rax
cmp dword [rbp + 0xa4], 0
je 0x180291cd1
movsxd rax, dword [rbp + 0xa4]
mov r8, rax
mov rdx, qword [rbp + 0x468]
mov rcx, qword [rbp + 0x68]
call fcn.1801ac959
movsxd rax, dword [rbp + 0xa4]
mov rcx, qword [rbp + 0x68]
add rcx, rax
mov rax, rcx
mov r8d, 4
xor edx, edx
mov rcx, rax
call fcn.1801adf07
mov eax, dword [rbp + 0x24]
and eax, 0xffffffbf
mov dword [rbp + 0x24], eax
mov rcx, qword [rbp + 0x48]
call fcn.1801ad39a
mov rcx, qword [rbp + 0x478]
mov qword [rcx], rax
mov rax, qword [rbp + 0x478]
cmp qword [rax], 0
jne 0x180291d3c
mov rdx, qword [rbp + 0x48]
lea rcx, str.no_such_vfs:__s
call fcn.1801aeab0
mov rcx, qword [rbp + 0x488]
mov qword [rcx], rax
mov dword [rbp + 4], 1
cmp dword [rbp + 4], 0
je 0x180291d53
mov rcx, qword [rbp + 0x68]
call fcn.1801aedf8
mov qword [rbp + 0x68], 0
mov rax, qword [rbp + 0x470]
mov ecx, dword [rbp + 0x24]
mov dword [rax], ecx
mov rax, qword [rbp + 0x480]
mov rcx, qword [rbp + 0x68]
mov qword [rax], rcx
mov eax, dword [rbp + 4]
lea rsp, [rbp + 0x448]
pop rdi
pop rbp
ret