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

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x208
mov r15, rdx
mov r13, rcx
movabs rbx, 0x7f8c7eb869852952
mov edx, 0xaa
mov r8d, 0x8b
mov r9d, 5
mov rcx, rbx
call fcn.140006b10
mov rbp, rax
mov edx, 0x99
mov r8d, 0xef
mov r9d, 0x1887fd
xor ecx, ecx
call fcn.140006b10
xor rbp, rax
or rbx, 1
mov r8d, 0xc5
mov rcx, rbx
mov rdx, rbp
call fcn.140006b10
xor ecx, ecx
call fcn.140006b10
mov eax, dword [r13 + 0x3c]
mov dword [rsp + 0x6c], eax
movsxd rax, dword [rsp + 0x6c]
add rax, r13
add rax, 0x18
mov qword [rsp + 0xa8], rax
mov rax, qword [rsp + 0xa8]
mov eax, dword [rax + 0x70]
add rax, r13
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x40]
add rax, 0x1c
mov qword [rsp + 0xb0], rax
mov rax, qword [rsp + 0xb0]
mov eax, dword [rax]
mov dword [rsp + 0x3c], eax
mov eax, dword [rsp + 0x3c]
add rax, r13
mov qword [rsp + 0xd8], rax
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 0x24]
mov qword [rsp + 0xb8], rax
mov rax, qword [rsp + 0xb8]
add rax, r13
mov qword [rsp + 0xe0], rax
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 0x20]
add rax, r13
mov qword [rsp + 0xe8], rax
cmp r15, 0xffff
ja 0x140007911
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 0x10]
mov dword [rsp + 0x4c], eax
mov ecx, 0xd1
call fcn.140006b10
mov ecx, 0xff
mov edx, 0x8c
mov r8d, 0xfb
call fcn.140006b10
mov ecx, 0x6c29
mov rdx, r15
call fcn.140006b10
mov ecx, 0x54
mov edx, 0x4d
call fcn.140006b10
mov ecx, 0xff
mov edx, 0xbb
call fcn.140006b10
mov ecx, 0xa907
mov r9d, 0xc41682
mov rdx, r15
mov r8, r15
call fcn.140006b10
movabs rbx, 0x1a14cc374ac2375d
lea rcx, [rbx + 0x9145]
mov rdx, r15
call fcn.140006b10
mov eax, dword [rsp + 0x3c]
mov eax, dword [rsp + 0x3c]
mov eax, dword [rsp + 0x3c]
mov ecx, 1
mov edx, 0xd6
call fcn.140006b10
mov rcx, rbx
mov rdx, r15
call fcn.140006b10
mov ecx, 0xffff
mov edx, 0x2e9e22
call fcn.140006b10
and eax, r15d
mov dword [rsp + 0x50], eax
mov eax, dword [rsp + 0x4c]
mov ecx, dword [rsp + 0x50]
mov qword [rsp + 0x58], 0
cmp ecx, eax
jb 0x140008176
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 0x14]
add eax, dword [rsp + 0x4c]
mov ecx, dword [rsp + 0x50]
mov qword [rsp + 0x58], 0
cmp ecx, eax
jae 0x140008176
mov eax, dword [rsp + 0x4c]
mov ecx, dword [rsp + 0x50]
sub ecx, eax
mov rax, qword [rsp + 0xd8]
add r13, qword [rax + rcx*8]
mov qword [rsp + 0x70], r13
jmp 0x140007ce8
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_lstrlenA]
mov dword [rsp + 0x54], eax
mov rax, qword [rsp + 0x40]
add rax, 0x18
mov qword [rsp + 0xc0], rax
mov rax, qword [rsp + 0xc0]
mov esi, dword [rax]
mov rdi, qword [rsp + 0xb8]
mov ecx, 0x6d
mov edx, 0x75
mov r8d, 0x5d
call fcn.140006b10
mov rbx, rax
or ebx, edi
mov ecx, 0xff
mov edx, 3
mov r8d, 0x31
call fcn.140006b10
mov rbp, rax
and ebp, ebx
imul ebp, ebp
mov r8d, dword [rsp + 0x54]
mov ecx, 0x201b
mov edx, 0x86
call fcn.140006b10
mov rbx, rax
imul ebx, ebp
mov r9d, dword [rsp + 0x54]
mov ecx, 0xc5
mov edx, 0xe1
mov r8d, 6
call fcn.140006b10
mov rbp, rax
or ebp, dword [rsp + 0x6c]
mov ecx, 0xff
mov edx, 0xe9
call fcn.140006b10
mov rdi, rax
and edi, ebp
imul edi, edi
mov ecx, 0xeac7
mov edx, 0x22
call fcn.140006b10
imul eax, edi
xor ecx, ecx
cmp ebx, eax
sete cl
neg ecx
mov qword [rsp + 0x70], 0
cmp esi, ecx
je 0x140007ce8
movsxd rax, dword [rsp + 0x54]
mov qword [rsp + 0xf0], rax
mov qword [rsp + 0xa0], 0
nop
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0x88], rax
mov rax, qword [rsp + 0xe8]
mov rcx, qword [rsp + 0x88]
mov eax, dword [rax + rcx*4]
add rax, r13
mov qword [rsp + 0xf8], rax
nop
mov rax, qword [0x1400151b0]
mov qword [rsp + 0x98], rax
test rax, rax
jne 0x140007a88
lea rcx, str.msvcrt
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov rcx, rax
lea rdx, [0x140014058]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1400151b0], rax
mov qword [rsp + 0x98], rax
test rax, rax
je 0x140007c78
mov rsi, qword [rsp + 0x98]
mov rcx, qword [rsp + 0xf0]
mov edx, 0xfb
mov r8d, 0x94
call fcn.140006b10
mov rdx, qword [rsp + 0xf8]
mov rcx, r15
mov r8, rax
call rsi
mov dword [rsp + 0x30], eax
mov edx, dword [rsp + 0x30]
mov ecx, 0xffffffff
call fcn.140006b10
mov eax, dword [rsp + 0x30]
mov edx, dword [rsp + 0x30]
mov ecx, 0x7afafa69
call fcn.140006b10
mov edx, dword [rsp + 0x30]
mov ecx, 0xa061440
mov r8d, edx
call fcn.140006b10
mov edx, dword [rsp + 0x30]
mov ecx, 0x1050504
call fcn.140006b10
mov eax, dword [rsp + 0x30]
mov edx, dword [rsp + 0x30]
mov ecx, 0x1010104
mov r8d, edx
mov r9d, edx
call fcn.140006b10
mov r8d, dword [rsp + 0x30]
mov ecx, 0xb071544
mov edx, 0xaf1865
call fcn.140006b10
mov edx, dword [rsp + 0x30]
xor ecx, ecx
call fcn.140006b10
mov ecx, dword [rsp + 0x30]
cmp ecx, eax
sete byte [rsp + 0x2c]
movzx eax, byte [rsp + 0x2c]
cmp al, 1
je 0x140007c78
movzx ebp, byte [rsp + 0x2c]
mov eax, dword [rsp + 0x30]
mov eax, dword [rsp + 0x30]
mov eax, dword [rsp + 0x30]
mov ecx, 1
mov r8d, 0x2f
mov edx, ebp
call fcn.140006b10
movabs rcx, 0x7cc4c071bc473ef3
mov edx, ebp
call fcn.140006b10
mov rdi, rax
mov r9d, 0xd5b16b
xor ecx, ecx
mov edx, ebp
mov r8d, ebp
call fcn.140006b10
mov rbx, rax
add rbx, rdi
movzx esi, byte [rsp + 0x2c]
mov ecx, 0x4c
mov edx, 0xae
call fcn.140006b10
mov rdi, rax
or edi, dword [rsp + 0x30]
mov ecx, 0xff
mov edx, ebp
mov r8d, ebp
call fcn.140006b10
mov r12, rax
and r12d, edi
imul r12d, r12d
mov ecx, 0xbaf1
call fcn.140006b10
mov r14, rax
imul r14d, r12d
mov ecx, 0x52
mov edx, 0x8a
call fcn.140006b10
mov rdi, rax
or edi, esi
mov ecx, 0xff
mov edx, ebp
call fcn.140006b10
mov rsi, rax
and esi, edi
imul esi, esi
mov ecx, 0x3f3b
mov edx, 0x86
mov r8d, ebp
mov r9d, ebp
call fcn.140006b10
imul eax, esi
xor esi, esi
cmp r14d, eax
sete sil
mov edx, 0x4f
mov r9d, 0xc02628
movabs rcx, 0x833b3f8e43b8c10e
mov r8d, ebp
call fcn.140006b10
sub rax, rsi
add rax, rbx
add rax, qword [rsp + 0x88]
mov rcx, qword [rsp + 0xc0]
mov ecx, dword [rcx]
mov qword [rsp + 0xa0], rax
mov qword [rsp + 0x70], 0
cmp rax, rcx
jb 0x140007a10
jmp 0x140007ce8
movabs rdi, 0x3e7cd055691e308b
lea rcx, [rdi + 0x2dc39ee9]
mov edx, 0xc2
call fcn.140006b10
mov rbx, rax
mov edx, 0xc5e3ae
xor ecx, ecx
call fcn.140006b10
add rbx, rax
mov rcx, rdi
call fcn.140006b10
xor ecx, ecx
mov rdx, rbx
mov r8, rbx
call fcn.140006b10
mov rax, qword [rsp + 0x88]
mov eax, eax
mov rcx, qword [rsp + 0xb0]
mov ecx, dword [rcx]
add rcx, r13
mov rdx, qword [rsp + 0xe0]
movzx eax, word [rdx + rax*2]
mov eax, dword [rcx + rax*4]
add rax, r13
mov qword [rsp + 0x70], rax
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x60], rax
mov rax, qword [rsp + 0x40]
mov rcx, qword [rsp + 0x60]
cmp rcx, rax
setb byte [rsp + 0x2d]
cmp byte [rsp + 0x2d], 0
mov rax, qword [rsp + 0x60]
mov qword [rsp + 0x58], rax
jne 0x140008176
mov rax, qword [rsp + 0xa8]
mov eax, dword [rax + 0x74]
mov qword [rsp + 0x78], rax
mov rax, qword [rsp + 0x40]
add rax, qword [rsp + 0x78]
mov rcx, qword [rsp + 0x60]
cmp rcx, rax
setb byte [rsp + 0x2e]
movzx eax, byte [rsp + 0x2e]
mov rcx, qword [rsp + 0x60]
mov qword [rsp + 0x58], rcx
cmp al, 1
jne 0x140008176
mov rcx, qword [rsp + 0x60]
call qword [sym.imp.KERNEL32.dll_lstrlenA]
mov dword [rsp + 0x34], eax
mov rax, qword [rsp + 0x78]
movzx eax, byte [rsp + 0x2e]
mov edx, dword [rsp + 0x34]
mov ecx, 1
mov r8d, edx
call fcn.140006b10
mov edx, dword [rsp + 0x34]
xor ecx, ecx
mov r8d, edx
call fcn.140006b10
mov ecx, dword [rsp + 0x34]
cmp ecx, eax
sete byte [rsp + 0x2f]
cmp byte [rsp + 0x2f], 0
jne 0x14000816d
movsxd rsi, dword [rsp + 0x34]
movzx edi, byte [rsp + 0x2e]
mov ecx, 0xffffffff
mov rdx, rsi
call fcn.140006b10
mov rbx, rax
xor ebx, dword [rsp + 0x34]
or ebx, edi
mov ebp, dword [rsp + 0x34]
or ebp, edi
not ebp
mov ecx, 0xfffffffd
mov edx, 0xb9
mov r8d, 0x3a
call fcn.140006b10
mov r14, rax
imul r14d, ebp
mov ecx, 0xffffffff
mov edx, 0x79
call fcn.140006b10
mov rbp, rax
xor ebp, edi
mov ecx, 2
mov rdx, rsi
call fcn.140006b10
imul ebp, eax
sub ebp, dword [rsp + 0x34]
xor edi, dword [rsp + 0x34]
sub edi, ebx
sub edi, r14d
xor edi, ebp
movabs r14, 0x342cddae420dda12
lea rcx, [r14 + 0xdb]
mov r8d, 0xe5
mov rdx, rsi
call fcn.140006b10
mov rbx, rax
xor ecx, ecx
mov rdx, rsi
call fcn.140006b10
mov rbp, rax
xor ebp, ebx
mov rax, qword [rsp + 0x78]
movzx eax, byte [rsp + 0x2d]
mov ecx, 0x12
mov rdx, rsi
mov r8, rsi
call fcn.140006b10
mov ecx, 0xff
mov r8d, 0x82
mov rdx, rsi
call fcn.140006b10
mov ecx, 0x112d
mov r8d, 0x76
mov rdx, rsi
call fcn.140006b10
mov ecx, 0x44
call fcn.140006b10
mov ecx, 0xff
call fcn.140006b10
mov ecx, 0x6b0f
mov edx, 0xef
mov r8d, 0xc5
mov r9, rsi
call fcn.140006b10
mov r8d, 0xfa
mov rcx, r14
mov rdx, rsi
mov r9, rsi
call fcn.140006b10
mov rbx, rax
xor ecx, ecx
call fcn.140006b10
mov r14, rax
add r14d, ebx
xor r14d, ebp
mov r15d, dword [rsp + 0x34]
movzx eax, byte [rsp + 0x2f]
mov eax, dword [rsp + 0x34]
mov eax, dword [rsp + 0x34]
mov eax, dword [rsp + 0x34]
mov ecx, 1
mov rdx, rsi
call fcn.140006b10
movabs r13, 0x4402bfdddfd26c69
mov rcx, r13
call fcn.140006b10
mov r12, rax
xor ecx, ecx
mov rdx, rsi
call fcn.140006b10
add r12, rax
mov rbp, qword [rsp + 0x78]
movzx eax, byte [rsp + 0x2d]
lea ebx, [rax + rbp]
mov ecx, ebp
xor ecx, eax
sub ebx, ecx
and ebp, eax
mov ecx, 1
mov r8d, 0x64
mov rdx, rsi
call fcn.140006b10
mov ecx, eax
shl ebp, cl
xor ebp, ebx
or r13, 0x100
mov rcx, r13
mov rdx, rsi
mov r8, rsi
mov r9, rsi
call fcn.140006b10
add rbp, rax
xor rbp, r12
sub rbp, rsi
movzx eax, byte [rsp + 0x2f]
lea ebx, [rdi + rax]
mov ecx, edi
xor ecx, eax
sub ebx, ecx
and edi, eax
mov ecx, 1
mov rdx, rsi
call fcn.140006b10
mov ecx, eax
shl edi, cl
xor edi, ebx
cmp r15d, r14d
cmovbe rdi, rbp
lea rcx, [rsp + rsi]
add rcx, 0x100
xor edx, edx
mov r8, rdi
call fcn.1400069b0
mov rdx, qword [rsp + 0x60]
lea rdi, [rsp + 0x100]
mov rcx, rdi
mov r8, rsi
call fcn.140006ae0
movzx eax, byte [rsp + 0x100]
mov byte [rsp + 0x3a], al
mov qword [rsp + 0x90], rdi
movabs r14, 0xf68aabd424f8807
movabs rdi, 0xf0975542bdb07827
nop word cs:[rax + rax]
mov rax, qword [rsp + 0x90]
mov qword [rsp + 0xd0], rax
movzx ebx, byte [rsp + 0x3a]
mov rax, qword [rsp + 0xd0]
inc rax
mov qword [rsp + 0x80], rax
mov edx, 0x8d
mov rcx, r14
call fcn.140006b10
mov rbp, rax
mov edx, 0x6b
xor ecx, ecx
call fcn.140006b10
mov rsi, rax
xor esi, ebp
mov rcx, rdi
mov edx, ebx
call fcn.140006b10
mov rbp, rax
xor ecx, ecx
mov edx, ebx
mov r8d, ebx
call fcn.140006b10
add eax, ebp
add eax, esi
cmp bl, al
sete byte [rsp + 0x3b]
cmp byte [rsp + 0x3b], 0
jne 0x140008110
mov rax, qword [rsp + 0x80]
movzx ebx, byte [rax]
movzx eax, byte [rsp + 0x3b]
mov ecx, 0xffffffff
mov r8d, 0x6e
mov edx, ebx
mov r9d, ebx
call fcn.140006b10
mov ecx, 0xffffffff
mov edx, 0x2a7c6a
mov r8d, 0x4c
call fcn.140006b10
mov ecx, 0xfffffffd
mov r8d, 0x6f
mov edx, ebx
call fcn.140006b10
mov ecx, 0xffffffff
mov edx, 0x5c
mov r8d, ebx
call fcn.140006b10
mov ecx, 2
mov edx, ebx
mov r8d, ebx
call fcn.140006b10
mov edx, 0x9c3d67
xor ecx, ecx
mov r8d, ebx
call fcn.140006b10
mov rcx, qword [rsp + 0x80]
mov byte [rsp + 0x3a], bl
mov qword [rsp + 0x90], rcx
cmp bl, al
jne 0x140008000
mov edx, 0x52
mov r8d, 0x84
xor ecx, ecx
call fcn.140006b10
mov rcx, qword [rsp + 0x80]
mov byte [rcx], al
lea rcx, [rsp + 0x100]
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov qword [rsp + 0xc8], rax
cmp qword [rsp + 0xc8], 0
je 0x14000816d
mov rdx, qword [rsp + 0xd0]
add rdx, 2
mov rcx, qword [rsp + 0xc8]
call fcn.1400076e0
mov qword [rsp + 0x58], rax
jmp 0x140008176
mov qword [rsp + 0x58], 0
mov rax, qword [rsp + 0x58]
add rsp, 0x208
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret