Function at 0x1400494ac
Capabilities:
Parse credit card information

Disassembly:
mov qword [rsp + 0x10], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x20
mov r12d, 1
mov rdi, rdx
add dword [rcx + 0x660], r12d
mov r14, rcx
mov eax, dword [rcx + 0x660]
cmp eax, dword [rcx + 0x664]
jge 0x14004996f
xor eax, eax
xorps xmm0, xmm0
movups xmmword [rdx], xmm0
mov dword [rdx + 0x10], eax
mov r9, qword [rcx]
mov r8d, dword [r9]
mov ecx, dword [r9 + 0x18]
cmp r8d, 0x2e
jg 0x1400495cd
je 0x1400495c3
cmp r8d, 0xffffffff
je 0x1400495ba
cmp r8d, 0x24
je 0x1400495b0
cmp r8d, 0x28
je 0x14004956a
cmp r8d, 0x29
je 0x140049560
cmp r8d, 0x2a
je 0x14004953e
cmp r8d, 0x2b
jne 0x140049602
mov dword [rdx + 0xc], r12d
or dword [rdx + 0x10], 0xffffffff
xor esi, esi
cmp ecx, 0x3f
mov ebx, 0x3002
mov eax, 0x1802
setne sil
mov dword [rdx + 4], esi
cmovne ebx, eax
jmp 0x140049948
mov ebx, 0x1816
jmp 0x140049948
cmp ecx, 0x3f
jne 0x1400495a6
cmp dword [r9 + 0x30], 0x3d
jne 0x140049580
mov ebx, 0x4807
jmp 0x140049948
cmp dword [r9 + 0x30], 0x21
jne 0x140049591
mov ebx, 0x4808
jmp 0x140049948
cmp dword [r9 + 0x30], 0x3a
jne 0x140049990
mov ebx, 0x4813
jmp 0x140049948
mov ebx, 0x1812
jmp 0x140049948
mov ebx, 0x1804
jmp 0x140049948
xor esi, esi
mov ebx, esi
jmp 0x140049948
mov ebx, 0x1809
jmp 0x140049948
mov edx, r8d
sub edx, 0x3f
je 0x14004992f
sub edx, 0x1c
je 0x14004991d
sub edx, r12d
je 0x14004975a
mov ebx, 2
sub edx, ebx
je 0x140049750
sub edx, 0x1d
je 0x14004961a
cmp edx, r12d
je 0x140049610
mov ebx, 0x180a
mov dword [rdi + 8], r8d
jmp 0x140049948
mov ebx, 0x1801
jmp 0x140049948
mov rax, qword [r9 + 8]
xor esi, esi
or ebp, 0xffffffff
mov qword [rsp + 0x70], rax
mov eax, dword [r9 + 0x10]
mov r13d, ebp
mov dword [rsp + 0x60], eax
mov r15d, esi
mov r12d, esi
mov edx, 0x18
mov rcx, r14
call fcn.14004851c
mov rdx, qword [r14]
movsxd rcx, dword [rdx]
lea eax, [rcx - 0x30]
cmp eax, 9
ja 0x14004967e
inc r15d
cmp ecx, 0xff
ja 0x140049671
mov rax, rcx
lea rcx, [0x140277c80]
movsx ecx, byte [rax + rcx]
test ecx, ecx
jns 0x140049674
or ecx, 0xffffffff
lea eax, [r12 + r12*4]
lea r12d, [rcx + rax*2]
jmp 0x140049639
cmp ecx, 0x2c
jne 0x1400496b0
cmp r15d, 9
jg 0x140049717
cmp r13d, ebp
jne 0x140049717
cmp dword [rdx + 0x18], 0x7d
je 0x1400496a1
mov r13d, r12d
jmp 0x140049633
test r15d, r15d
je 0x140049717
mov edx, 0x30
mov r8d, ebp
jmp 0x1400496d0
cmp ecx, 0x7d
jne 0x140049717
cmp r15d, 9
jg 0x140049717
test r15d, r15d
je 0x140049717
cmp r13d, ebp
lea edx, [rcx - 0x65]
mov r8d, r12d
cmove r13d, r12d
mov r12d, r13d
mov eax, ntohl
mov r10, rdi
mov r9, rdi
lea ecx, [rax + 4]
mov dword [rax + rdi], r12d
mov dword [rcx + rdi], r8d
mov rcx, r14
call fcn.14004851c
mov rax, qword [r14]
cmp dword [rax], 0x3f
jne 0x14004970b
mov edx, 0x18
mov dword [rdi + 4], esi
mov rcx, r14
call fcn.14004851c
jmp 0x140049948
mov dword [rdi + 4], 1
jmp 0x140049948
mov rax, qword [rsp + 0x70]
xor edx, edx
mov qword [r14 + 0x620], rax
mov rcx, r14
mov eax, dword [rsp + 0x60]
mov dword [r14 + 0x628], eax
lea rax, [r14 + 8]
mov qword [r14], rax
call fcn.140048380
mov ebx, 0x180a
mov dword [rdi + 8], 0x7b
jmp 0x140049948
mov ebx, 0x1803
jmp 0x140049948
mov ebx, 0x300a
cmp ecx, 0x62
jne 0x14004976e
mov ebx, 0x3005
jmp 0x140049948
cmp ecx, 0x42
jne 0x14004977d
mov ebx, 0x3006
jmp 0x140049948
cmp ecx, 0x66
jne 0x14004978e
mov dword [rdi + 8], ntohl
jmp 0x140049948
cmp ecx, 0x6e
jne 0x14004979f
mov dword [rdi + 8], 0xa
jmp 0x140049948
cmp ecx, 0x74
jne 0x1400497b0
mov dword [rdi + 8], 9
jmp 0x140049948
cmp ecx, 0x72
jne 0x1400497c1
mov dword [rdi + 8], reloc.WS2_32.dll_listen
jmp 0x140049948
cmp ecx, 0x76
jne 0x1400497d2
mov dword [rdi + 8], ntohl
jmp 0x140049948
cmp ecx, 0x63
jne 0x14004980d
mov ecx, dword [r9 + 0x30]
lea eax, [rcx - 0x61]
cmp eax, 0x19
jbe 0x1400497ef
lea eax, [rcx - 0x41]
cmp eax, 0x19
ja 0x1400499b1
and ecx, 0x8000001f
jge 0x140049800
sub ecx, r12d
or ecx, 0xffffffe0
add ecx, r12d
mov dword [rdi + 8], ecx
mov ebx, 0x480a
jmp 0x140049948
cmp ecx, 0x78
je 0x140049909
cmp ecx, 0x75
je 0x140049909
cmp ecx, 0x64
jne 0x14004982e
mov ebx, 0x300b
jmp 0x140049948
cmp ecx, 0x44
jne 0x14004983d
mov ebx, 0x300c
jmp 0x140049948
cmp ecx, 0x73
jne 0x14004984c
mov ebx, 0x300d
jmp 0x140049948
cmp ecx, 0x53
jne 0x14004985b
mov ebx, 0x300e
jmp 0x140049948
cmp ecx, 0x77
jne 0x14004986a
mov ebx, 0x300f
jmp 0x140049948
cmp ecx, 0x57
jne 0x140049879
mov ebx, 0x3010
jmp 0x140049948
lea eax, [rcx - 0x30]
cmp eax, 9
ja 0x1400498fc
mov edx, 0x30
cmp ecx, edx
jne 0x14004989d
mov eax, dword [r9 + 0x30]
sub eax, edx
cmp eax, 9
jbe 0x1400499b1
xor esi, esi
jmp 0x1400498f7
xor esi, esi
lea rbp, [0x140277c80]
mov r15d, esi
mov ebx, esi
mov edx, 0x18
mov rcx, r14
call fcn.14004851c
mov rax, qword [r14]
movsxd rcx, dword [rax]
lea eax, [rcx - 0x30]
cmp eax, 9
ja 0x1400498ef
cmp ecx, 0xff
ja 0x1400498d6
movsx ecx, byte [rcx + rbp]
test ecx, ecx
jns 0x1400498d9
or ecx, 0xffffffff
add ebx, r12d
lea eax, [r15 + r15*4]
lea r15d, [rcx + rax*2]
cmp ebx, 9
jge 0x1400499b1
jmp 0x1400498ab
mov ebx, reloc.WS2_32.dll_recvfrom
mov esi, r15d
mov dword [rdi + 8], esi
jmp 0x140049948
test ecx, ecx
js 0x1400499b1
mov dword [rdi + 8], ecx
jmp 0x140049948
xor edx, edx
mov rcx, r14
call fcn.14004868c
mov dword [rdi + 8], eax
mov ebx, 0xa
jmp 0x140049948
mov ebx, 0x3015
mov eax, 0x1814
cmp ecx, 0x5e
jmp 0x140049558
mov dword [rdi + 0x10], r12d
cmp ecx, 0x3f
jne 0x14004993f
mov ebx, 0x3002
jmp 0x140049948
mov ebx, 0x1802
mov dword [rdi + 4], r12d
mov edx, ebx
mov rcx, r14
shr edx, 8
call fcn.14004851c
movzx eax, bl
mov rbx, qword [rsp + 0x68]
mov dword [rdi], eax
add rsp, 0x20
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov rcx, qword [rcx + 0x608]
lea r9, str.token_limit
mov r8d, 0x871
lea rdx, str.duk_lexer.c
call fcn.14001b4fc
int3
mov rcx, qword [r14 + 0x608]
lea r9, str.invalid_regexp_group
mov r8d, 0x5000879
lea rdx, str.duk_lexer.c
call fcn.14001b42c
int3
mov rcx, qword [r14 + 0x608]
lea r9, str.invalid_regexp_escape
mov r8d, 0x5000875
lea rdx, str.duk_lexer.c
call fcn.14001b42c
int3