Function at 0x180034b10
Capabilities:
Parse credit card information

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x1f]
sub rsp, 0x100
mov rax, qword [0x1800ca088]
xor rax, rsp
mov qword [rbp + 0x17], rax
mov r11, qword [rbp + 0x7f]
mov r13d, r9d
xor edi, edi
mov dword [rsp + 0x58], r9d
mov r9, rcx
mov qword [rsp + 0x60], rcx
mov qword [rbp - 0x71], r8
lea rcx, [0x180000000]
lea r15d, [r13 + 0x108]
mov qword [rbp - 0x61], rdx
mov qword [rbp - 0x69], r11
mov r12, rdx
mov r14d, r13d
cmp r13d, r15d
jae 0x180034d9b
mov rax, qword [rbp - 0x61]
lea esi, [r13 - 0x7b]
mov qword [rsp + 0x40], rax
nop word [rax + rax]
cmp esi, 0x91
ja case.default.0x180034bb5
movzx eax, byte [rcx + rsi + 0x351e8]
mov ecx, dword [rcx + rax*4 + 0x351cc]
lea rax, [0x180000000]
add rcx, rax
jmp rcx
mov eax, dword [r9]
sub eax, 0xcfc
cmp eax, 3
jbe case.0x180034bb5.6
mov eax, 0x44
nop dword [rax]
cmp eax, 0x44
je 0x180034be2
cmp eax, 0x18f8
je case.0x180035057.0
jmp 0x180034bea
mov dword [rsp + 0x38], 1
add eax, 0x18b4
cmp eax, 0x3168
jbe 0x180034bd0
mov r10, qword [rsp + 0x40]
lea rcx, [0x180000000]
mov r8, qword [rbp - 0x71]
add r14d, 0x2c
mov r11, qword [rbp - 0x69]
add esi, 0x2c
mov r9, qword [rsp + 0x60]
cmp r14d, r15d
jae 0x180034da4
jmp 0x180034b90
mov r8d, 8
lea rdx, str.ileMappi
lea rcx, [rbp - 0x11]
call fcn.1800848d8
jmp case.0x180034bb5.6
lea rdx, [0x1800b3700]
lea rcx, [rbp - 0x11]
call qword [sym.imp.KERNEL32.dll_lstrcatW]
jmp case.0x180034bb5.6
lea rdx, [0x1800b3708]
lea rcx, [rbp - 0x11]
call qword [sym.imp.KERNEL32.dll_lstrcpyW]
mov r8d, 2
lea rdx, [0x1800b3710]
lea rcx, [rbp - 0xd]
call fcn.180088aec
jmp case.0x180034bb5.6
mov eax, dword [r12 + 0x1ab0c]
lea r9, [rsp + 0x34]
mov dword [rsp + 0x50], eax
lea rdx, [rsp + 0x50]
lea rax, [rsp + 0x31]
mov r8d, 0xbc
mov qword [rsp + 0x28], rax
lea rcx, [rsp + 0x32]
lea rax, [rsp + 0x33]
mov qword [rsp + 0x20], rax
call fcn.180021a10
movzx r9d, byte [rsp + 0x32]
mov rcx, r12
movzx r8d, byte [rsp + 0x33]
movzx edx, byte [rsp + 0x34]
call qword [r12 + 0x1ab40]
mov r10, rax
mov qword [rsp + 0x40], rax
jmp 0x180034bfb
mov eax, dword [r9]
sub eax, 0xcf8
cmp eax, 3
ja case.0x180034bb5.6
mov ebx, 0x42
cmp ebx, 0x42
je 0x180034d15
cmp ebx, 0xad4
je 0x180034d0f
cmp ebx, 0x1566
je case.0x180035057.0
jmp 0x180034d70
mov dword [rsp + 0x38], edi
jmp 0x180034d70
mov edx, dword [r8]
mov r9d, dword [r9]
lea eax, [rdx + r9]
cmp eax, 0xcfc
jbe 0x180034d47
mov ecx, 0x60
nop dword [rax + rax]
mov eax, ecx
sub eax, 0x60
je 0x180034d3c
cmp eax, 0x2f
je 0x180034d91
add ecx, 0x2f
cmp ecx, 0xbe
jb 0x180034d30
lea ecx, [r9 - 0xcf8]
mov r8, rdx
add rcx, 0x1ab0c
mov rdx, r11
add rcx, r12
call fcn.180082130
mov r8, qword [rbp - 0x71]
mov r11, qword [rbp - 0x69]
mov r9, qword [rsp + 0x60]
add ebx, 0xa92
cmp ebx, 0x1fb6
jbe 0x180034cf4
jmp case.0x180034bb5.6
mov r10, qword [rsp + 0x40]
jmp 0x180034c02
mov eax, 1
jmp 0x1800351a4
mov r10, qword [rbp - 0x61]
mov qword [rsp + 0x40], r10
movzx edx, byte [rsp + 0x31]
lea ebx, [r13 - 6]
mov dword [rsp + 0x50], r13d
mov r12d, r13d
mov dword [rsp + 0x3c], ebx
mov byte [rsp + 0x30], dl
cmp r13d, ebx
jbe 0x180035022
mov r14d, dword [rsp + 0x58]
lea esi, [r13 - 0x78]
mov r15d, dword [rsp + 0x58]
movzx r13d, byte [rsp + 0x31]
mov ebx, dword [rsp + 0x58]
mov eax, dword [rsp + 0x3c]
mov dword [rbp - 0x75], esi
cmp esi, 0x3c
ja case.default.0x180034e07
movzx eax, byte [rcx + rsi + 0x35298]
mov ecx, dword [rcx + rax*4 + 0x3527c]
lea rax, [0x180000000]
add rcx, rax
jmp rcx
mov dword [rsp + 0x38], r14d
jmp case.0x180034e07.6
mov eax, dword [rsp + 0x3c]
mov dl, 1
mov byte [rsp + 0x30], dl
jmp 0x180034feb
test r10, r10
je 0x180034e97
mov esi, 0x84
nop dword [rax]
mov eax, esi
sub eax, 0x84
je 0x180034e73
sub eax, 1
je 0x180034e54
sub eax, 1
je 0x180034e4e
cmp eax, 1
je case.0x180035057.0
jmp 0x180034e7d
mov dword [rsp + 0x38], edi
jmp 0x180034e7d
movzx edx, byte [rsp + 0x31]
mov rcx, r10
mov r9d, dword [r11]
add edx, r15d
mov r8d, dword [r8]
call qword [r10 + 0x6a0]
mov r10, qword [rsp + 0x40]
jmp 0x180034e7d
mov r15d, dword [r9]
sub r15d, 0xcfc
mov r8, qword [rbp - 0x71]
inc esi
mov r11, qword [rbp - 0x69]
mov r9, qword [rsp + 0x60]
cmp esi, 0x88
jb 0x180034e30
mov esi, dword [rbp - 0x75]
mov rax, qword [rbp - 0x61]
movzx r9d, byte [rsp + 0x32]
mov rcx, rax
movzx r8d, byte [rsp + 0x33]
movzx edx, byte [rsp + 0x34]
call qword [rax + 0x1ab28]
mov r10, qword [rsp + 0x40]
movzx r13d, al
jmp case.0x180034e07.6
mov rax, qword [rbp - 0x61]
lea r8, [rsp + 0x48]
mov r9d, 0x24
mov dword [rsp + 0x48], 0xcf8
xor edx, edx
lea rcx, [rbp - 0x59]
mov eax, dword [rax + 0x1ab0c]
mov dword [rbp - 0x59], eax
call fcn.1800114b0
mov rax, qword [rbp - 0x71]
mov esi, 0x57
mov edi, dword [rbp - 0x39]
mov r12d, dword [rax]
mov rax, qword [rbp - 0x69]
mov r14d, dword [rax]
mov rax, qword [rsp + 0x60]
mov eax, dword [rax]
mov dword [rsp + 0x48], eax
nop
mov eax, esi
sub eax, 0x52
je 0x180034f71
sub eax, 1
je 0x180034f60
sub eax, 1
je 0x180034f99
sub eax, 3
je 0x180034f2d
cmp eax, 1
je 0x180034f99
jmp 0x180034f8e
mov eax, dword [rsp + 0x48]
lea r9, [0x1800cca08]
lea r8, [rbp - 0x51]
mov dword [rbp - 0x49], eax
lea rdx, [rbp - 0x49]
mov dword [rbp - 0x51], r14d
lea rcx, [rbp - 0x41]
mov dword [rbp - 0x41], r12d
mov dword [rsp + 0x20], 3
call fcn.180011fb0
mov ebx, eax
jmp 0x180034f8e
test edi, edi
je 0x180034f6b
mov ebx, 0xffffffff
jmp 0x180034f8e
movzx ebx, word [rbp - 0x79]
jmp 0x180034f8e
mov rax, qword [rbp - 0x69]
lea r9, [rbp - 0x79]
mov r8b, byte [pe_dos_header]
lea rcx, [rsp + 0x58]
movzx edx, r14b
call qword [rax]
mov edi, eax
inc esi
cmp esi, 0x5c
jb 0x180034f10
mov esi, dword [rbp - 0x75]
mov r14d, ebx
mov r12d, dword [rsp + 0x50]
mov r10, qword [rsp + 0x40]
mov dword [rbp - 0x39], edi
xor edi, edi
jmp case.0x180034e07.6
movsd xmm0, qword [str.bjec]
movsd qword [rbp + 0xb], xmm0
mov dword [rbp + 0x13], 0x74
jmp case.0x180034e07.6
test r13b, r13b
jne case.0x180034e07.6
mov ecx, IUnknown_AtomicRelease
cmp ecx, 0xa6
je 0x180035016
dec ecx
cmp ecx, 0xa5
ja 0x180034fd0
mov eax, dword [rsp + 0x3c]
movzx edx, byte [rsp + 0x30]
dec r12d
dec esi
mov dword [rsp + 0x50], r12d
mov dword [rbp - 0x75], esi
cmp r12d, eax
jbe 0x18003501d
mov r8, qword [rbp - 0x71]
lea rcx, [0x180000000]
mov r11, qword [rbp - 0x69]
mov r9, qword [rsp + 0x60]
jmp 0x180034de5
mov eax, edi
jmp 0x1800351a4
mov r13d, dword [rsp + 0x58]
lea r14d, [r13 + 8]
cmp r13d, r14d
jae case.0x180035057.0
mov rdi, qword [rbp - 0x61]
lea esi, [r13 - 0x7b]
cmp esi, 0x3f
ja case.0x180035057.1
lea r8, [0x180000000]
movzx eax, byte [r8 + rsi + 0x352f8]
mov ecx, dword [r8 + rax*4 + 0x352d8]
add rcx, r8
jmp rcx
mov rcx, qword [rbp - 0x61]
xor eax, eax
mov qword [rbp - 0x21], rax
xorps xmm0, xmm0
mov dword [rbp - 0x19], eax
movups xmmword [rbp - 0x31], xmm0
movzx edx, byte [rcx]
lea eax, [rdx - 0x30]
cmp al, 9
ja 0x1800350b3
mov ecx, 0x3a
nop dword [rax]
cmp ecx, 0x3a
je 0x180035090
cmp ecx, 0x48
je case.0x180035057.0
jmp 0x180035097
lea eax, [rdx - 0x30]
mov byte [rsp + 0x38], al
add ecx, 0xe
cmp ecx, 0x56
jb 0x180035080
movzx edx, byte [rsp + 0x30]
inc r13d
inc esi
cmp r13d, r14d
jb 0x180035037
jmp case.0x180035057.0
lea eax, [rdx - 0x61]
cmp al, 5
ja 0x1800350d2
mov eax, 0x6a
nop
cmp eax, 0x6a
je 0x180035192
inc eax
cmp eax, 0x6b
jb 0x1800350c0
jmp 0x18003509f
sub dl, 0x41
cmp dl, 5
ja 0x18003509f
mov eax, 0x39
nop
cmp eax, 0x39
je 0x180035197
add eax, 0x1f
cmp eax, 0x58
jb 0x1800350e0
jmp 0x18003509f
mov dword [rbp - 0x31], 0x1c
jmp case.0x180035057.1
test dl, dl
je 0x180035133
mov ebx, 0x49
cmp ebx, 0x49
jne 0x180035120
lea rdx, [rbp - 0x31]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetCommState]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
add ebx, 0x1ff
cmp ebx, 0x1ff
jbe 0x180035105
movzx edx, byte [rsp + 0x30]
mov byte [rsp + 0x38], 0
jmp case.0x180035057.1
xor r9d, r9d
lea rax, [rbp - 0x11]
xor edx, edx
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0x100
lea r8d, [r9 + 4]
lea rcx, [rdx - 1]
call qword [sym.imp.KERNEL32.dll_CreateFileMappingW]
mov rdi, rax
test rax, rax
jne 0x18003509f
xor dl, dl
mov byte [rsp + 0x30], dl
jmp case.0x180035057.1
mov rax, qword [rsp + 0x60]
mov byte [rax], 0
jmp case.0x180035057.1
mov rax, qword [rsp + 0x60]
mov byte [rax], 1
jmp case.0x180035057.1
lea eax, [rdx - 0x57]
jmp 0x18003519c
movzx eax, byte [rcx]
sub al, 0x37
mov byte [rsp + 0x38], al
mov eax, dword [rsp + 0x38]
mov rcx, qword [rbp + 0x17]
xor rcx, rsp
call fcn.1800803f0
mov rbx, qword [rsp + 0x158]
add rsp, 0x100
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret