Function at 0x7ff7e1b11810
Capabilities:
Convert ip address from string

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x180]
sub rsp, 0x280
mov rax, qword [0x7ff7e1d8f600]
xor rax, rsp
mov qword [rbp + 0x170], rax
mov r12, qword [rcx]
xor r15d, r15d
movsxd rbx, edx
mov rsi, rcx
mov edi, 0x310
mov qword [rbp - 0x50], 0xffffffffffffffff
mov r14, rbx
mov qword [rbp + 0x18], rbx
mov qword [rsp + 0x68], r15
cmp dword [rsi + 0x16c], 2
lea rax, [rbx + rbx*2]
lea r13, [rcx + rax*8]
mov qword [rbp - 0x60], r15
lea ecx, [rdi + 0x18]
jne 0x7ff7e1b11899
cmp qword [rsi + 0x260], 0xffffffffffffffff
mov eax, edi
cmovne eax, ecx
cmp dword [rax + rsi], 2
je 0x7ff7e1b11899
mov rax, qword [rsi + 0x158]
jmp 0x7ff7e1b118a0
mov rax, qword [rsi + 0xd0]
mov edx, 1
mov qword [rbp - 0x58], rax
mov r9d, edx
lea ecx, [rdx + 4]
lea r8d, [rdx + 1]
call fcn.7ff7e1b00330
test al, al
je 0x7ff7e1b118cb
lea rdx, [0x7ff7e1cb6640]
mov rcx, r12
call fcn.7ff7e1afd6a0
cmp byte [rsi + 0x40a], r15b
je 0x7ff7e1b11912
lea rcx, [0x7ff7e1cb66cc]
call qword [sym.imp.kernel32.dll_GetModuleHandleA]
mov rcx, rax
lea rdx, [0x7ff7e1cb66b8]
call qword [sym.imp.kernel32.dll_GetProcAddress]
test rax, rax
jne 0x7ff7e1b11912
mov edx, 3
lea ecx, [rax + 6]
mov r9d, edx
lea r8d, [rax + 2]
call fcn.7ff7e1b00330
test al, al
je 0x7ff7e1b11912
mov cl, 1
jmp 0x7ff7e1b11914
xor cl, cl
mov rax, qword [r13 + 0x2e8]
mov byte [rax + 0x6a], cl
cmp dword [rsi + 0x16c], 2
jne 0x7ff7e1b1194a
cmp qword [rsi + 0x260], 0xffffffffffffffff
mov rax, rdi
mov ecx, 0x328
cmovne rax, rcx
cmp dword [rax + rsi], 2
je 0x7ff7e1b1194a
mov rax, qword [rsi + 0x3a8]
jmp 0x7ff7e1b11951
mov rax, qword [rsi + 0x358]
test rax, rax
je 0x7ff7e1b11995
mov edx, 1
lea ecx, [rdx + 5]
lea r9d, [rdx + 2]
lea r8d, [rdx + 1]
call fcn.7ff7e1b00330
test al, al
je 0x7ff7e1b1197c
mov rax, qword [r13 + 0x2e8]
mov byte [rax + 0x6b], 1
jmp 0x7ff7e1b119a0
lea rdx, [0x7ff7e1cb66e0]
mov rcx, r12
call fcn.7ff7e1afd520
mov eax, 0x4d
jmp 0x7ff7e1b12368
mov rax, qword [r13 + 0x2e8]
mov byte [rax + 0x6b], r15b
mov rax, qword [r13 + 0x2e8]
mov qword [rax], r15
cmp dword [rsi + 0x16c], 2
jne 0x7ff7e1b119d8
cmp qword [rsi + 0x260], 0xffffffffffffffff
mov rax, rdi
mov ecx, 0x328
cmovne rax, rcx
cmp dword [rax + rsi], 2
je 0x7ff7e1b119d8
movzx eax, byte [r12 + 0xafb]
jmp 0x7ff7e1b119e1
movzx eax, byte [r12 + 0xa53]
test al, al
je 0x7ff7e1b11a26
mov rcx, rsi
call fcn.7ff7e1af71e0
mov r9d, ebx
lea rdx, [rbp - 0x60]
xor r8d, r8d
mov rcx, rsi
call fcn.7ff7e1af6980
test al, al
jne 0x7ff7e1b11a1e
mov rcx, qword [r13 + 0x2e8]
mov rax, qword [rbp - 0x60]
mov qword [rcx], rax
mov rax, qword [r13 + 0x2e8]
mov rcx, qword [rax]
inc dword [rcx + 0x18]
mov rcx, rsi
call fcn.7ff7e1af7210
mov rcx, qword [r13 + 0x2e8]
cmp qword [rcx], r15
jne 0x7ff7e1b1206f
xorps xmm0, xmm0
mov r9d, 8
movups xmmword [rbp - 0x40], xmm0
mov dword [rbp - 0x40], 4
movups xmmword [rbp - 0x30], xmm0
movups xmmword [rbp - 0x20], xmm0
movups xmmword [rbp - 0x10], xmm0
movups xmmword [rbp], xmm0
cmp byte [rsi + 0x390], r15b
je 0x7ff7e1b11a8a
cmp byte [rcx + 0x6b], r15b
mov eax, 0x20
cmovne eax, r9d
mov dword [rbp + 8], eax
cmp byte [r12 + 0xaab], r15b
je 0x7ff7e1b11a84
or eax, 0x1800
jmp 0x7ff7e1b11a8f
bts eax, 9
jmp 0x7ff7e1b11a8f
mov eax, 0x1808
mov dword [rbp + 8], eax
cmp byte [rsi + 0x391], r15b
jne 0x7ff7e1b11aa1
or eax, 4
mov dword [rbp + 8], eax
movsxd r8, dword [rsi + 0x348]
cmp r8d, 7
ja case.default.0x7ff7e1b11acd
lea rdx, [0x7ff7e19f0000]
mov ecx, dword [rdx + r8*4 + 0x122394]
add rcx, rdx
mov edx, 0x60000
mov dword [rsp + 0x60], edx
jmp rcx
mov ecx, dword [rsi + 0x16c]
mov r10, qword [rsi]
cmp ecx, 2
jne 0x7ff7e1b11b29
cmp qword [rsi + 0x260], 0xffffffffffffffff
mov rax, rdi
mov r9d, 0x328
cmovne rax, r9
cmp dword [rax + rsi], ecx
je 0x7ff7e1b11b07
mov r8d, dword [rsi + 0x398]
mov r9d, dword [rsi + 0x39c]
jmp 0x7ff7e1b11b30
cmp ecx, 2
jne 0x7ff7e1b11b29
cmp qword [rsi + 0x260], 0xffffffffffffffff
mov rax, rdi
cmovne rax, r9
cmp dword [rax + rsi], ecx
je 0x7ff7e1b11b29
mov r9d, dword [rsi + 0x39c]
jmp 0x7ff7e1b11b30
mov r9d, dword [rsi + 0x34c]
test r9d, 0xfffeffff
cmove r9d, edx
sar r9d, 0x10
cmp r8d, r9d
jg 0x7ff7e1b11b9c
mov edx, dword [rbp - 8]
mov ecx, r8d
sub ecx, 4
je 0x7ff7e1b11b7e
sub ecx, 1
je 0x7ff7e1b11b78
sub ecx, 1
je 0x7ff7e1b11b72
cmp ecx, 1
jne 0x7ff7e1b11b85
lea rdx, [0x7ff7e1cb61d0]
mov rcx, r10
call fcn.7ff7e1afd520
jmp 0x7ff7e1b12363
bts edx, 0xb
jmp 0x7ff7e1b11b82
bts edx, 9
jmp 0x7ff7e1b11b82
bts edx, 7
mov dword [rbp - 8], edx
inc r8d
cmp r8d, r9d
jle 0x7ff7e1b11b47
jmp 0x7ff7e1b11b9c
mov dword [rbp - 8], 0x20
jmp 0x7ff7e1b11b9c
mov dword [rbp - 8], r9d
mov ecx, dword [rsi + 0x16c]
mov edx, 0x328
cmp ecx, 2
jne 0x7ff7e1b11bc9
cmp qword [rsi + 0x260], 0xffffffffffffffff
mov rax, rdi
cmovne rax, rdx
cmp dword [rax + rsi], ecx
je 0x7ff7e1b11bc9
mov rax, qword [rsi + 0x3c8]
jmp 0x7ff7e1b11bd0
mov rax, qword [rsi + 0x378]
mov ebx, 0x3a
test rax, rax
je 0x7ff7e1b11c79
cmp ecx, 2
jne 0x7ff7e1b11bfd
cmp qword [rsi + 0x260], 0xffffffffffffffff
cmovne rdi, rdx
cmp dword [rdi + rsi], ecx
je 0x7ff7e1b11bfd
mov rdi, qword [rsi + 0x3c8]
jmp 0x7ff7e1b11c04
mov rdi, qword [rsi + 0x378]
lea rcx, [0x7ff7e1d95fa0]
test rdi, rdi
je 0x7ff7e1b11c6e
mov r14, rcx
cmp byte [rdi], 0
lea rax, [0x7ff7e1d96054]
je 0x7ff7e1b11c67
cmp r14, rax
jge 0x7ff7e1b11c67
xor r8d, r8d
xor edx, edx
mov rcx, rdi
call fcn.7ff7e1c817a0
test eax, eax
jne 0x7ff7e1b11c45
mov rcx, rdi
call fcn.7ff7e1b10ff0
test eax, eax
je 0x7ff7e1b11ccc
mov dword [r14], eax
mov edx, ebx
mov rcx, rdi
add r14, 4
inc r15d
call fcn.7ff7e1c6701c
mov rdi, rax
test rax, rax
je 0x7ff7e1b11c67
add rdi, 1
jne 0x7ff7e1b11c13
lea rcx, [0x7ff7e1d95fa0]
mov dword [rbp - 0x18], r15d
xor r15d, r15d
mov qword [rbp - 0x10], rcx
mov rdi, qword [r12 + 0xa80]
test rdi, rdi
je 0x7ff7e1b11f39
mov edx, 0x5c
mov rcx, rdi
call fcn.7ff7e1c6701c
mov r15, rax
test rax, rax
je 0x7ff7e1b11dfe
mov r14, rax
lea rdx, [0x7ff7e1cb6540]
sub r14, rdi
mov rcx, rdi
mov r8, r14
call fcn.7ff7e1c7a420
test eax, eax
jne 0x7ff7e1b11ce5
mov dword [rsp + 0x60], 0x10000
jmp 0x7ff7e1b11dbf
lea rdx, [0x7ff7e1cb6780]
mov rcx, r12
call fcn.7ff7e1afd520
mov eax, 0x3b
jmp 0x7ff7e1b12368
mov r8, r14
lea rdx, [0x7ff7e1cb6550]
mov rcx, rdi
call fcn.7ff7e1c7a420
test eax, eax
jne 0x7ff7e1b11d08
mov dword [rsp + 0x60], 0x20000
jmp 0x7ff7e1b11dbf
mov r8, r14
lea rdx, [0x7ff7e1cb6560]
mov rcx, rdi
call fcn.7ff7e1c7a420
test eax, eax
jne 0x7ff7e1b11d2b
mov dword [rsp + 0x60], 0x40000
jmp 0x7ff7e1b11dbf
mov r8, r14
lea rdx, [0x7ff7e1cb6570]
mov rcx, rdi
call fcn.7ff7e1c7a420
test eax, eax
jne 0x7ff7e1b11d4b
mov dword [rsp + 0x60], 0x50000
jmp 0x7ff7e1b11dbf
mov r8, r14
lea rdx, [0x7ff7e1cb657c]
mov rcx, rdi
call fcn.7ff7e1c7a420
test eax, eax
je 0x7ff7e1b11dbf
mov r8, r14
lea rdx, [0x7ff7e1cb6588]
mov rcx, rdi
call fcn.7ff7e1c7a420
test eax, eax
jne 0x7ff7e1b11d81
mov dword [rsp + 0x60], 0x70000
jmp 0x7ff7e1b11dbf
mov r8, r14
lea rdx, [0x7ff7e1cb65a0]
mov rcx, rdi
call fcn.7ff7e1c7a420
test eax, eax
jne 0x7ff7e1b11da1
mov dword [rsp + 0x60], 0x80000
jmp 0x7ff7e1b11dbf
mov r8, r14
lea rdx, [0x7ff7e1cb65b8]
mov rcx, rdi
call fcn.7ff7e1c7a420
test eax, eax
jne 0x7ff7e1b11dfe
mov dword [rsp + 0x60], 0x90000
lea r14, [r15 + 1]
mov edx, 0x5c
mov rcx, r14
call fcn.7ff7e1c6701c
mov r15, rax
test rax, rax
je 0x7ff7e1b11dfe
lea r8, [0x7ff7e1cb65d0]
mov byte [rax], 0
mov edx, 0x191
mov rcx, r14
call fcn.7ff7e1b01060
mov byte [r15], 0x5c
mov r14, rax
test rax, rax
jne 0x7ff7e1b11e17
lea ebx, [rax + 0x1b]
mov r8, rdi
lea rdx, [0x7ff7e1cb67b8]
mov rcx, r12
call fcn.7ff7e1afd520
mov eax, ebx
jmp 0x7ff7e1b12368
mov rax, 0xffffffffffffffff
nop
inc rax
cmp byte [r15 + rax + 1], 0
jne 0x7ff7e1b11e20
cmp rax, 0x28
jne 0x7ff7e1b11dfe
mov r9d, dword [rsp + 0x60]
lea ecx, [rax - 0x1f]
bts r9d, 0xe
mov qword [rsp + 0x20], r14
xor r8d, r8d
xor edx, edx
call qword [sym.imp.crypt32.dll_CertOpenStore]
mov rdi, rax
test rax, rax
jne 0x7ff7e1b11e92
call qword [sym.imp.kernel32.dll_GetLastError]
mov r8d, dword [rsp + 0x60]
lea rdx, [0x7ff7e1cb67f0]
mov r9, r14
mov dword [rsp + 0x20], eax
mov rcx, r12
call fcn.7ff7e1afd520
lea r8, [0x7ff7e1cb65d0]
mov edx, 0x26b
mov rcx, r14
call fcn.7ff7e1b00a30
mov eax, ebx
jmp 0x7ff7e1b12368
lea r8, [0x7ff7e1cb65d0]
mov edx, 0x26f
mov rcx, r14
call fcn.7ff7e1b00a30
lea rax, [rbp + 0x50]
mov dword [rbp + 0x20], 0x14
mov qword [rbp + 0x28], rax
lea r9, [rbp + 0x50]
xor eax, eax
lea rcx, [r15 + 1]
mov qword [rsp + 0x30], rax
mov edx, 0x28
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x20]
mov qword [rsp + 0x20], rax
lea r8d, [rdx - 0x24]
call qword [sym.imp.crypt32.dll_CryptStringToBinaryA]
test eax, eax
je 0x7ff7e1b11e10
mov r9d, 0x10000
lea rax, [rbp + 0x20]
xor r15d, r15d
xor r8d, r8d
mov qword [rsp + 0x28], r15
mov rcx, rdi
mov qword [rsp + 0x20], rax
lea edx, [r9 + 1]
call qword [sym.imp.crypt32.dll_CertFindCertificateInStore]
mov qword [rsp + 0x68], rax
test rax, rax
je 0x7ff7e1b11e10
lea rax, [rsp + 0x68]
mov dword [rbp - 0x3c], 1
xor edx, edx
mov qword [rbp - 0x38], rax
mov rcx, rdi
call qword [sym.imp.crypt32.dll_CertCloseStore]
mov edx, 0x20
lea r9, [0x7ff7e1cb65d0]
mov r8d, 0x296
lea ecx, [rdx - 0x1f]
call fcn.7ff7e1b00860
mov rcx, qword [r13 + 0x2e8]
mov qword [rcx], rax
mov rax, qword [r13 + 0x2e8]
mov rcx, qword [rax]
test rcx, rcx
jne 0x7ff7e1b11f99
lea rdx, [0x7ff7e1cb6830]
mov rcx, r12
call fcn.7ff7e1afd520
mov rcx, qword [rsp + 0x68]
test rcx, rcx
je 0x7ff7e1b121b6
call qword [sym.imp.crypt32.dll_CertFreeCertificateContext]
mov eax, 0x1b
jmp 0x7ff7e1b12368
mov dword [rcx + 0x18], 1
lea rdx, [0x7ff7e1cb6858]
mov rax, qword [r13 + 0x2e8]
xor r9d, r9d
mov rcx, qword [rax]
lea r8d, [r9 + 2]
lea rax, [rcx + 0x10]
mov qword [rsp + 0x40], rax
lea rax, [rbp - 0x40]
mov qword [rsp + 0x38], rcx
xor ecx, ecx
mov qword [rsp + 0x30], r15
mov qword [rsp + 0x28], r15
mov qword [rsp + 0x20], rax
mov rax, qword [0x7ff7e1d96070]
call qword [rax + 0x18]
mov rcx, qword [rsp + 0x68]
mov ebx, eax
test rcx, rcx
je 0x7ff7e1b11ff7
call qword [sym.imp.crypt32.dll_CertFreeCertificateContext]
test ebx, ebx
je 0x7ff7e1b1206b
mov r8d, 0x80
lea rdx, [rbp + 0xf0]
mov ecx, ebx
call fcn.7ff7e1ae7c30
mov r8, rax
lea rdx, [0x7ff7e1cb6888]
mov rcx, r12
call fcn.7ff7e1afd520
mov rcx, qword [r13 + 0x2e8]
lea r8, [0x7ff7e1cb65d0]
mov edx, 0x2b1
mov rcx, qword [rcx]
call fcn.7ff7e1b00a30
mov rax, qword [r13 + 0x2e8]
mov qword [rax], r15
cmp ebx, 0x80090300
je 0x7ff7e1b121b6
jmp 0x7ff7e1b12363
lea rdx, [0x7ff7e1cb6748]
mov rcx, r12
call fcn.7ff7e1afd520
jmp 0x7ff7e1b12363
mov r14, qword [rbp + 0x18]
mov rbx, qword [rbp - 0x58]
lea r8, [rbp + 0x10]
mov rdx, rbx
mov ecx, 2
call qword [sym.imp.ws2_32.dll_inet_pton]
test eax, eax
jne 0x7ff7e1b1209d
lea r8, [rbp + 0x40]
mov rdx, rbx
lea ecx, [rax + 0x17]
call qword [sym.imp.ws2_32.dll_inet_pton]
test eax, eax
je 0x7ff7e1b120ac
lea rdx, [0x7ff7e1cb68b8]
mov rcx, r12
call fcn.7ff7e1afd6a0
mov rax, qword [r13 + 0x2e8]
cmp byte [rax + 0x6a], 0
je 0x7ff7e1b1212a
movabs rax, 0x312e312f70747468
mov dword [rbp + 0x74], 2
lea r8, [0x7ff7e1cb68f8]
mov qword [rbp + 0x7b], rax
lea rdx, [0x7ff7e1cb6908]
mov byte [rbp + 0x7a], 8
mov rcx, r12
call fcn.7ff7e1afd6a0
mov ecx, 9
call fcn.7ff7e1affe80
movzx ecx, ax
mov word [rbp + 0x78], ax
add ecx, 6
lea rax, [rbp + 0x70]
mov dword [rbp + 0x70], ecx
mov qword [rsp + 0x78], rax
lea rax, [rsp + 0x70]
mov qword [rbp - 0x68], rax
mov rax, qword [r13 + 0x2e8]
mov dword [rsp + 0x70], 0x13
mov dword [rsp + 0x74], 0x12
jmp 0x7ff7e1b12141
lea rcx, [rsp + 0x70]
mov qword [rsp + 0x70], 0
mov qword [rbp - 0x68], rcx
mov qword [rsp + 0x78], r15
lea rcx, [rbp - 0x80]
mov dword [rbp - 0x6c], 1
mov qword [rbp + 0x38], rcx
lea r9, [0x7ff7e1cb65d0]
mov edx, 0x18
mov dword [rbp - 0x70], r15d
mov qword [rbp - 0x80], 0
mov r8d, 0x309
mov qword [rbp - 0x78], r15
mov dword [rbp + 0x30], r15d
mov dword [rbp + 0x34], 1
lea ecx, [rdx - 0x17]
mov dword [rax + 0x5c], 0x811c
call fcn.7ff7e1b00860
mov rcx, qword [r13 + 0x2e8]
mov qword [rcx + 8], rax
mov r10, qword [r13 + 0x2e8]
mov r8, qword [r10 + 8]
test r8, r8
jne 0x7ff7e1b121c0
lea rdx, [0x7ff7e1cb6830]
mov rcx, r12
call fcn.7ff7e1afd520
mov eax, 0x1b
jmp 0x7ff7e1b12368
test rbx, rbx
je 0x7ff7e1b121b6
cmp byte [r10 + 0x6a], 0
lea rax, [r8 + 0x10]
mov r9d, dword [r10 + 0x5c]
lea rcx, [r10 + 0x60]
mov qword [rsp + 0x58], rax
lea rdx, [rbp - 0x70]
mov qword [rsp + 0x50], rcx
lea rax, [rbp + 0x30]
mov rcx, qword [r10]
cmove rdx, r15
mov qword [rsp + 0x48], rax
mov rax, qword [0x7ff7e1d96070]
mov qword [rsp + 0x40], r8
mov r8, rbx
mov dword [rsp + 0x38], r15d
mov qword [rsp + 0x30], rdx
xor edx, edx
mov dword [rsp + 0x28], r15d
mov dword [rsp + 0x20], r15d
call qword [rax + 0x30]
mov ebx, eax
cmp eax, 0x90312
je 0x7ff7e1b122d7
mov rcx, qword [r13 + 0x2e8]
lea r8, [0x7ff7e1cb65d0]
mov edx, 0x324
mov rcx, qword [rcx + 8]
call fcn.7ff7e1b00a30
mov rcx, qword [r13 + 0x2e8]
mov r8d, 0x80
lea rdx, [rbp + 0xf0]
mov qword [rcx + 8], r15
cmp ebx, 0x80090300
je 0x7ff7e1b122b1
cmp ebx, 0x80090322
je 0x7ff7e1b1228b
mov ecx, ebx
call fcn.7ff7e1ae7c30
mov r8, rax
lea rdx, [0x7ff7e1cb6928]
mov rcx, r12
call fcn.7ff7e1afd520
jmp 0x7ff7e1b12363
mov ecx, 0x80090322
call fcn.7ff7e1ae7c30
mov r8, rax
lea rdx, [0x7ff7e1cb6960]
mov rcx, r12
call fcn.7ff7e1afd520
mov eax, 0x3c
jmp 0x7ff7e1b12368
mov ecx, 0x80090300
call fcn.7ff7e1ae7c30
mov r8, rax
lea rdx, [0x7ff7e1cb6928]
mov rcx, r12
call fcn.7ff7e1afd520
mov eax, 0x1b
jmp 0x7ff7e1b12368
mov r9d, dword [rbp - 0x80]
lea rax, [rbp - 0x50]
mov r8, qword [rbp - 0x78]
mov rcx, rsi
mov rdx, qword [rsi + r14*8 + 0x258]
mov qword [rsp + 0x20], rax
call fcn.7ff7e1afde40
mov rdx, qword [0x7ff7e1d96070]
mov ebx, eax
mov rcx, qword [rbp - 0x78]
call qword [rdx + 0x80]
mov r8, qword [rbp - 0x50]
mov r9d, dword [rbp - 0x80]
test ebx, ebx
jne 0x7ff7e1b12354
cmp r9, r8
jne 0x7ff7e1b12354
mov rax, qword [r13 + 0x2e8]
mov dword [rax + 0x64], r15d
mov rax, qword [r13 + 0x2e8]
mov byte [rax + 0x68], bl
mov rax, qword [r13 + 0x2e8]
mov byte [rax + 0x69], bl
mov rax, qword [r13 + 0x2e8]
mov byte [rax + 0x58], bl
xor eax, eax
mov dword [r13 + 0x2e4], 1
jmp 0x7ff7e1b12368
lea rdx, [0x7ff7e1cb6990]
mov rcx, r12
call fcn.7ff7e1afd520
mov eax, 0x23
mov rcx, qword [rbp + 0x170]
xor rcx, rsp
call fcn.7ff7e1c64cb0
mov rbx, qword [rsp + 0x2d0]
add rsp, 0x280
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret