Function at 0x180006a60
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov dword [rsp + 0x10], edx
mov qword [rsp + 8], rcx
push rbx
push rbp
push rsi
push r12
push r14
push r15
sub rsp, 0x48
mov r15, rcx
test edx, edx
jne 0x180006a91
lea rbx, [rcx + 0x3a0]
lea r12, [rcx + 0x8c]
lea rsi, [rcx + 0x5c]
jmp 0x180006aa3
lea rbx, [rcx + 0x400]
lea r12, [rcx + 0x18c]
lea rsi, [rcx + 0x48]
mov r8, qword [rcx + 0x290]
lea rbp, [rcx + 0x298]
xor r14d, r14d
mov eax, dword [rbp]
mov qword [rsp + 0x20], r12
cmp byte [rax + r8], 6
jne 0x180006b46
mov r10d, dword [rcx + 0x29c]
mov eax, dword [rbp]
mov ecx, r14d
lea r9d, [rax + 1]
cmp r9d, r10d
ja 0x180006b7a
movzx edx, byte [rax + r8]
cmp dl, 0x80
jb 0x180006b22
movzx edx, dl
and edx, 0x7f
lea eax, [rdx + r9]
cmp eax, r10d
ja 0x180006b7a
movsxd rax, r9d
test edx, edx
je 0x180006b25
add r8, rax
add r9d, edx
nop dword [rax + rax]
movzx eax, byte [r8]
shl ecx, 8
inc r8
or ecx, eax
dec edx
jne 0x180006b10
jmp 0x180006b25
movzx ecx, dl
lea eax, [r9 + rcx]
cmp eax, r10d
ja 0x180006b7a
mov eax, r14d
test ecx, ecx
mov dword [rbp], r9d
cmovg eax, ecx
mov dword [rsp + 0x90], eax
js 0x180006b7a
add dword [rbp], eax
mov r9d, dword [r15 + 0x29c]
mov rcx, qword [r15 + 0x290]
lea r8, [rsp + 0x90]
mov rdx, rbp
mov qword [rsp + 0x40], rdi
mov edi, dword [rbp]
call fcn.180005460
test eax, eax
jns 0x180006b8d
mov eax, 0xffffff74
jmp 0x180007651
mov eax, 0xffffff74
add rsp, 0x48
pop r15
pop r14
pop r12
pop rsi
pop rbp
pop rbx
ret
mov edx, dword [rbp]
mov qword [rsp + 0x38], r13
mov r13d, dword [rsp + 0x90]
sub edx, edi
mov rcx, rdi
mov r8, rsi
add rcx, qword [r15 + 0x290]
add edx, r13d
call fcn.18000bd90
test eax, eax
jne 0x18000764c
mov ecx, dword [rbp]
mov esi, r14d
add r13d, ecx
cmp dword [rsp + 0x88], 1
mov dword [rsp + 0x98], r13d
jne 0x180006bf3
mov eax, ecx
add rax, qword [r15 + 0x290]
mov qword [r15 + 0x390], rax
mov eax, r13d
sub eax, ecx
mov dword [r15 + 0x398], eax
mov rdx, qword [0x180097878]
cmp ecx, r13d
jae 0x1800072e5
mov qword [rsp + 0x28], rdx
nop dword [rax + rax]
mov eax, dword [rbp]
mov r10d, dword [r15 + 0x29c]
mov r8, qword [r15 + 0x290]
lea edx, [rax + 1]
xor r13b, r13b
cmp edx, r10d
ja 0x180006ca4
cmp byte [rax + r8], 0x31
jne 0x180006ca4
lea r9d, [rdx + 1]
mov ecx, r14d
cmp r9d, r10d
ja 0x180006ca4
movzx edx, byte [rdx + r8]
cmp dl, 0x80
jb 0x180006c82
movzx edx, dl
and edx, 0x7f
lea eax, [rdx + r9]
cmp eax, r10d
ja 0x180006ca4
movsxd rax, r9d
test edx, edx
je 0x180006c85
add r8, rax
add r9d, edx
nop word [rax + rax]
movzx eax, byte [r8]
shl ecx, 8
inc r8
or ecx, eax
dec edx
jne 0x180006c70
jmp 0x180006c85
movzx ecx, dl
lea eax, [r9 + rcx]
cmp eax, r10d
ja 0x180006ca4
mov eax, r14d
test ecx, ecx
cmovg eax, ecx
js 0x180006ca4
add eax, r9d
cmp eax, r10d
ja 0x180006ca4
mov dword [rbp], r9d
mov r9d, dword [r15 + 0x29c]
mov rcx, qword [r15 + 0x290]
lea r8, [rsp + 0x90]
mov rdx, rbp
call fcn.180005460
test eax, eax
jle 0x1800072db
mov ecx, dword [rbp]
mov r8, qword [r15 + 0x290]
movzx eax, byte [rcx + r8]
lea edx, [rcx + 1]
mov dword [rbp], edx
cmp al, 6
jne 0x1800072d1
mov r10d, dword [r15 + 0x29c]
lea r9d, [rdx + 1]
mov ecx, r14d
cmp r9d, r10d
ja 0x1800072db
movzx edx, byte [rdx + r8]
cmp dl, 0x80
jb 0x180006d42
movzx edx, dl
and edx, 0x7f
lea eax, [rdx + r9]
cmp eax, r10d
ja 0x1800072db
movsxd rax, r9d
test edx, edx
je 0x180006d45
add r8, rax
add r9d, edx
nop dword [rax + rax]
movzx eax, byte [r8]
shl ecx, 8
inc r8
or ecx, eax
dec edx
jne 0x180006d30
jmp 0x180006d45
movzx ecx, dl
lea eax, [r9 + rcx]
cmp eax, r10d
ja 0x1800072db
mov r8d, r14d
test ecx, ecx
mov dword [rbp], r9d
cmovg r8d, ecx
js 0x1800072db
mov edi, dword [r15 + 0x29c]
mov edx, r9d
lea rax, [rdx + 2]
cmp rax, rdi
ja 0x1800072db
mov r10, qword [r15 + 0x290]
movzx eax, word [r10 + rdx]
mov word [rsp + 0x90], ax
cmp al, 0x55
jne 0x180007044
movzx ecx, ax
shr cx, 8
cmp cl, 4
jne 0x180007044
lea ecx, [rdx + 2]
xor r12b, r12b
mov dword [rbp], ecx
movzx r8d, byte [rcx + r10]
inc ecx
lea eax, [rcx + 1]
mov dword [rbp], ecx
movzx r13d, byte [rcx + r10]
lea r11d, [rax + 1]
mov dword [rbp], eax
mov ecx, r14d
cmp r11d, edi
ja 0x1800072db
movzx edx, byte [rax + r10]
cmp dl, 0x80
jb 0x180006e12
movzx edx, dl
and edx, 0x7f
lea eax, [rdx + r11]
cmp eax, edi
ja 0x1800072db
movsxd rax, r11d
test edx, edx
je 0x180006e15
lea r9, [r10 + rax]
add r11d, edx
movzx eax, byte [r9]
shl ecx, 8
inc r9
or ecx, eax
dec edx
jne 0x180006e00
jmp 0x180006e15
movzx ecx, dl
lea eax, [r11 + rcx]
cmp eax, edi
ja 0x1800072db
mov edi, r14d
test ecx, ecx
mov dword [rbp], r11d
cmovg edi, ecx
js 0x1800072db
xor dl, dl
lea eax, [rdi + 0xe]
mov ecx, 0x100
sub ecx, esi
movzx edx, dl
cmp eax, ecx
mov eax, 1
cmovg edx, eax
cmp r8b, 3
jne 0x180006e9e
cmp dword [rsp + 0x88], eax
jne 0x180006e77
mov eax, r11d
mov dword [r15 + 0x80], edi
mov byte [r15 + 0x84], r13b
add rax, qword [r15 + 0x290]
mov qword [r15 + 0x78], rax
mov r13, qword [rsp + 0x20]
test dl, dl
jne 0x180006e90
mov eax, esi
mov r12b, 1
add esi, 4
mov dword [rax + r13], 0x3d4e432f
mov eax, dword [rbp]
mov dword [rbx + 0x14], edi
mov dword [rbx + 0x10], eax
jmp 0x180007015
cmp r8b, 4
jne 0x180006ec3
mov r13, qword [rsp + 0x20]
test dl, dl
jne 0x18000700c
mov eax, esi
add esi, 4
mov dword [rax + r13], 0x3d4e532f
jmp 0x180007009
cmp r8b, 6
jne 0x180006f00
mov r13, qword [rsp + 0x20]
test dl, dl
jne 0x180006ef2
movzx eax, word [0x18008abd0]
mov ecx, esi
mov r12b, 1
mov word [rcx + r13], ax
movzx eax, byte [0x18008abd2]
add esi, 3
mov byte [rcx + r13 + 2], al
mov eax, dword [rbp]
mov dword [rbx + 0x24], edi
mov dword [rbx + 0x20], eax
jmp 0x180007015
cmp r8b, 7
jne 0x180006f3d
mov r13, qword [rsp + 0x20]
test dl, dl
jne 0x180006f2f
movzx eax, word [0x18008abd4]
mov ecx, esi
mov r12b, 1
mov word [rcx + r13], ax
movzx eax, byte [0x18008abd6]
add esi, 3
mov byte [rcx + r13 + 2], al
mov eax, dword [rbp]
mov dword [rbx + 0x2c], edi
mov dword [rbx + 0x28], eax
jmp 0x180007015
cmp r8b, 8
jne 0x180006f6a
mov r13, qword [rsp + 0x20]
test dl, dl
jne 0x180006f5c
mov eax, esi
mov r12b, 1
add esi, 4
mov dword [rax + r13], 0x3d54532f
mov eax, dword [rbp]
mov dword [rbx + 0x34], edi
mov dword [rbx + 0x30], eax
jmp 0x180007015
cmp r8b, 0xa
jne 0x180006fa4
mov r13, qword [rsp + 0x20]
test dl, dl
jne 0x180006f99
movzx eax, word [0x18008abd8]
mov ecx, esi
mov r12b, 1
mov word [rcx + r13], ax
movzx eax, byte [0x18008abda]
add esi, 3
mov byte [rcx + r13 + 2], al
mov eax, dword [rbp]
mov dword [rbx + 0x3c], edi
mov dword [rbx + 0x38], eax
jmp 0x180007015
cmp r8b, 0xb
jne 0x180006fce
mov r13, qword [rsp + 0x20]
test dl, dl
jne 0x180006fc3
mov eax, esi
mov r12b, 1
add esi, 4
mov dword [rax + r13], 0x3d554f2f
mov eax, dword [rbp]
mov dword [rbx + 0x44], edi
mov dword [rbx + 0x40], eax
jmp 0x180007015
cmp r8b, 5
jne 0x180007289
mov r13, qword [rsp + 0x20]
test dl, dl
jne 0x18000700c
mov rax, qword [str._serialNumber]
mov ecx, esi
add esi, 0xe
mov qword [rcx + r13], rax
mov eax, dword [0x18008abe8]
mov dword [rcx + r13 + 8], eax
movzx eax, word [0x18008abec]
mov word [rcx + r13 + 0xc], ax
mov r12b, 1
mov eax, dword [rbp]
mov dword [rbx + 0x1c], edi
mov dword [rbx + 0x18], eax
test r12b, r12b
je 0x18000728e
test dl, dl
jne 0x18000728e
mov edx, dword [rbp]
mov ecx, esi
movsxd r8, edi
add rdx, qword [r15 + 0x290]
add rcx, r13
call fcn.18002d8c0
add esi, edi
jmp 0x18000728e
xor r11b, r11b
xor r15b, r15b
cmp al, 0x2a
jne 0x18000705d
cmp byte [rsp + 0x91], 0x86
jne 0x180007076
mov r11b, 1
jmp 0x180007076
cmp al, 9
jne 0x180007076
cmp byte [rsp + 0x91], 0x92
movzx r15d, r15b
mov eax, 1
cmove r15d, eax
lea eax, [rdx + r8 + 1]
mov ecx, r14d
lea r9d, [rax + 1]
mov dword [rbp], eax
cmp r9d, edi
ja 0x1800072db
movzx edx, byte [rax + r10]
cmp dl, 0x80
jb 0x1800070d2
movzx edx, dl
and edx, 0x7f
lea eax, [rdx + r9]
cmp eax, edi
ja 0x1800072db
movsxd rax, r9d
test edx, edx
je 0x1800070d5
lea r8, [r10 + rax]
add r9d, edx
nop dword [rax + rax]
movzx eax, byte [r8]
shl ecx, 8
inc r8
or ecx, eax
dec edx
jne 0x1800070c0
jmp 0x1800070d5
movzx ecx, dl
lea eax, [r9 + rcx]
cmp eax, edi
ja 0x1800072db
mov edi, r14d
test ecx, ecx
mov dword [rbp], r9d
cmovg edi, ecx
js 0x1800072db
mov ecx, 0x100
movzx r13d, r13b
mov eax, 1
sub ecx, esi
cmp edi, ecx
cmovg r13d, eax
test r11b, r11b
je 0x18000721f
lea eax, [rdi + 0xe]
cmp eax, ecx
jle 0x18000711e
mov r13b, 1
jmp 0x18000714b
test r13b, r13b
jne 0x18000714b
mov rax, qword [str._emailAddress]
mov ecx, esi
add esi, 0xe
mov qword [rcx + r12], rax
mov eax, dword [0x18008abf8]
mov dword [rcx + r12 + 8], eax
movzx eax, word [0x18008abfc]
mov word [rcx + r12 + 0xc], ax
mov eax, dword [rbp]
mov r14, qword [rsp + 0x28]
mov ecx, reloc.WS2_32.dll_recv
mov dword [rbx + 0x48], eax
mov dword [rbx + 0x4c], edi
test r14, r14
je 0x180007174
call r14
mov r14, qword [0x180097878]
mov qword [rsp + 0x28], r14
jmp 0x180007179
call fcn.18002d468
mov r12, rax
test rax, rax
je 0x1800072c7
lea eax, [rdi + 1]
movsxd rcx, eax
test r14, r14
je 0x1800071a1
call r14
mov rcx, qword [0x180097878]
mov qword [rsp + 0x28], rcx
jmp 0x1800071a6
call fcn.18002d468
mov qword [r12 + 8], rax
test rax, rax
je 0x1800072a7
mov rcx, qword [rsp + 0x80]
mov edx, dword [rbp]
movsxd r14, edi
add rdx, qword [rcx + 0x290]
mov r8, r14
mov rcx, rax
call fcn.18002d8c0
mov r11, qword [r12 + 8]
mov r9, qword [rsp + 0x80]
mov byte [r14 + r11], 0
mov rax, qword [r9 + 0x30]
mov qword [r12], rax
mov qword [r9 + 0x30], r12
mov r12, qword [rsp + 0x20]
test r13b, r13b
jne 0x18000721a
mov edx, dword [rbp]
mov ecx, esi
mov r8, r14
add rdx, qword [r9 + 0x290]
add rcx, r12
call fcn.18002d8c0
add esi, edi
xor r14d, r14d
jmp 0x180007224
xor r14d, r14d
jmp 0x18000722c
mov r12, qword [rsp + 0x20]
mov r9, qword [rsp + 0x80]
test r15b, r15b
je 0x180007281
mov ecx, 0x100
lea eax, [rdi + 5]
sub ecx, esi
cmp eax, ecx
jg 0x180007278
test r13b, r13b
jne 0x180007278
mov eax, dword [str._UID]
mov ecx, esi
add esi, 5
mov dword [rcx + r12], eax
movzx eax, byte [0x18008ac04]
movsxd r8, edi
mov byte [rcx + r12 + 4], al
mov edx, dword [rbp]
mov ecx, esi
add rdx, qword [r9 + 0x290]
add rcx, r12
call fcn.18002d8c0
add esi, edi
mov eax, dword [rbp]
mov dword [rbx + 0x54], edi
mov dword [rbx + 0x50], eax
mov r15, qword [rsp + 0x80]
mov r13, qword [rsp + 0x20]
mov eax, dword [rsp + 0x98]
add dword [rbp], edi
cmp dword [rbp], eax
jae 0x1800072ec
mov r12, qword [rsp + 0x20]
jmp 0x180006c10
mov rax, qword [0x180097880]
mov rcx, r12
test rax, rax
je 0x1800072c2
call rax
mov eax, 0xffffff83
jmp 0x18000764c
call fcn.18002d284
mov eax, 0xffffff83
jmp 0x18000764c
mov eax, 0xffffff70
jmp 0x18000764c
mov eax, 0xffffff74
jmp 0x18000764c
mov r13, qword [rsp + 0x20]
jmp 0x1800072f1
mov rdx, qword [rsp + 0x28]
mov eax, esi
mov edi, r14d
mov byte [rax + r13], 0
mov eax, dword [rbx + 0x14]
test eax, eax
je 0x180007305
lea edi, [rax + 4]
mov eax, dword [rbx + 0x1c]
test eax, eax
je 0x180007310
lea edi, [rdi + rax + 4]
mov eax, dword [rbx + 0x24]
test eax, eax
je 0x18000731b
lea edi, [rdi + rax + 3]
mov eax, dword [rbx + 0x2c]
test eax, eax
je 0x180007326
lea edi, [rdi + rax + 3]
mov eax, dword [rbx + 0x34]
test eax, eax
je 0x180007331
lea edi, [rdi + rax + 4]
mov eax, dword [rbx + 0x3c]
test eax, eax
je 0x18000733c
lea edi, [rdi + rax + 3]
mov eax, dword [rbx + 0x44]
test eax, eax
je 0x180007347
lea edi, [rdi + rax + 4]
mov eax, dword [rbx + 0x4c]
test eax, eax
je 0x180007352
lea edi, [rdi + rax + 0xe]
mov eax, dword [rbx + 0x54]
test eax, eax
je 0x18000735d
lea edi, [rdi + rax + 5]
mov eax, dword [rbx + 0x5c]
test eax, eax
je 0x180007368
lea edi, [rdi + rax + 0xe]
lea eax, [rdi + 1]
movsxd rcx, eax
test rdx, rdx
je 0x180007377
call rdx
jmp 0x18000737c
call fcn.18002d468
mov qword [rbx], rax
test rax, rax
je 0x18000764a
cmp dword [rbx + 0x14], 0
je 0x1800073c1
inc dword [rbx + 0xc]
mov dword [rax], 0x3d4e432f
movsxd rdx, dword [rbx + 0x10]
mov rcx, qword [rbx]
add rdx, qword [r15 + 0x290]
movsxd r8, dword [rbx + 0x14]
add rcx, 4
call fcn.18002d8c0
mov r14d, dword [rbx + 0x14]
mov dword [rbx + 0x10], 4
add r14d, 4
cmp dword [rbx + 0x1c], 0
je 0x1800073fb
inc dword [rbx + 0xc]
mov rax, qword [rbx]
mov dword [r14 + rax], 0x3d4e532f
movsxd rdx, dword [rbx + 0x18]
movsxd r8, dword [rbx + 0x1c]
add rdx, qword [r15 + 0x290]
add r14d, 4
mov ecx, r14d
add rcx, qword [rbx]
call fcn.18002d8c0
mov dword [rbx + 0x18], r14d
add r14d, dword [rbx + 0x1c]
cmp dword [rbx + 0x24], 0
je 0x180007445
inc dword [rbx + 0xc]
mov rcx, qword [rbx]
movzx eax, word [0x18008abd0]
mov word [r14 + rcx], ax
movzx eax, byte [0x18008abd2]
mov byte [r14 + rcx + 2], al
movsxd rdx, dword [rbx + 0x20]
movsxd r8, dword [rbx + 0x24]
add rdx, qword [r15 + 0x290]
add r14d, 3
mov ecx, r14d
add rcx, qword [rbx]
call fcn.18002d8c0
mov dword [rbx + 0x20], r14d
add r14d, dword [rbx + 0x24]
cmp dword [rbx + 0x2c], 0
je 0x18000748f
inc dword [rbx + 0xc]
mov rcx, qword [rbx]
movzx eax, word [0x18008abd4]
mov word [r14 + rcx], ax
movzx eax, byte [0x18008abd6]
mov byte [r14 + rcx + 2], al
movsxd rdx, dword [rbx + 0x28]
movsxd r8, dword [rbx + 0x2c]
add rdx, qword [r15 + 0x290]
add r14d, 3
mov ecx, r14d
add rcx, qword [rbx]
call fcn.18002d8c0
mov dword [rbx + 0x28], r14d
add r14d, dword [rbx + 0x2c]
cmp dword [rbx + 0x34], 0
je 0x1800074c9
inc dword [rbx + 0xc]
mov rax, qword [rbx]
mov dword [r14 + rax], 0x3d54532f
movsxd rdx, dword [rbx + 0x30]
movsxd r8, dword [rbx + 0x34]
add rdx, qword [r15 + 0x290]
add r14d, 4
mov ecx, r14d
add rcx, qword [rbx]
call fcn.18002d8c0
mov dword [rbx + 0x30], r14d
add r14d, dword [rbx + 0x34]
cmp dword [rbx + 0x3c], 0
je 0x180007513
inc dword [rbx + 0xc]
mov rcx, qword [rbx]
movzx eax, word [0x18008abd8]
mov word [r14 + rcx], ax
movzx eax, byte [0x18008abda]
mov byte [r14 + rcx + 2], al
movsxd rdx, dword [rbx + 0x38]
movsxd r8, dword [rbx + 0x3c]
add rdx, qword [r15 + 0x290]
add r14d, 3
mov ecx, r14d
add rcx, qword [rbx]
call fcn.18002d8c0
mov dword [rbx + 0x38], r14d
add r14d, dword [rbx + 0x3c]
cmp dword [rbx + 0x44], 0
je 0x18000754d
inc dword [rbx + 0xc]
mov rax, qword [rbx]
mov dword [r14 + rax], 0x3d554f2f
movsxd rdx, dword [rbx + 0x40]
movsxd r8, dword [rbx + 0x44]
add rdx, qword [r15 + 0x290]
add r14d, 4
mov ecx, r14d
add rcx, qword [rbx]
call fcn.18002d8c0
mov dword [rbx + 0x40], r14d
add r14d, dword [rbx + 0x44]
cmp dword [rbx + 0x4c], 0
je 0x1800075a2
inc dword [rbx + 0xc]
mov rcx, qword [rbx]
mov rax, qword [str._emailAddress]
mov qword [r14 + rcx], rax
mov eax, dword [0x18008abf8]
mov dword [r14 + rcx + 8], eax
movzx eax, word [0x18008abfc]
mov word [r14 + rcx + 0xc], ax
movsxd rdx, dword [rbx + 0x48]
movsxd r8, dword [rbx + 0x4c]
add rdx, qword [r15 + 0x290]
add r14d, 0xe
mov ecx, r14d
add rcx, qword [rbx]
call fcn.18002d8c0
mov dword [rbx + 0x48], r14d
add r14d, dword [rbx + 0x4c]
cmp dword [rbx + 0x54], 0
je 0x1800075ea
inc dword [rbx + 0xc]
mov rcx, qword [rbx]
mov eax, dword [str._UID]
mov dword [r14 + rcx], eax
movzx eax, byte [0x18008ac04]
mov byte [r14 + rcx + 4], al
movsxd rdx, dword [rbx + 0x50]
movsxd r8, dword [rbx + 0x54]
add rdx, qword [r15 + 0x290]
add r14d, 5
mov ecx, r14d
add rcx, qword [rbx]
call fcn.18002d8c0
mov dword [rbx + 0x50], r14d
add r14d, dword [rbx + 0x54]
cmp dword [rbx + 0x5c], 0
je 0x18000763f
inc dword [rbx + 0xc]
mov rcx, qword [rbx]
mov rax, qword [str._serialNumber]
mov qword [r14 + rcx], rax
mov eax, dword [0x18008abe8]
mov dword [r14 + rcx + 8], eax
movzx eax, word [0x18008abec]
mov word [r14 + rcx + 0xc], ax
movsxd rdx, dword [rbx + 0x58]
movsxd r8, dword [rbx + 0x5c]
add rdx, qword [r15 + 0x290]
add r14d, 0xe
mov ecx, r14d
add rcx, qword [rbx]
call fcn.18002d8c0
mov dword [rbx + 0x58], r14d
add r14d, dword [rbx + 0x5c]
mov rax, qword [rbx]
mov byte [r14 + rax], 0
mov dword [rbx + 8], edi
xor eax, eax
mov r13, qword [rsp + 0x38]
mov rdi, qword [rsp + 0x40]
add rsp, 0x48
pop r15
pop r14
pop r12
pop rsi
pop rbp
pop rbx
ret