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

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x90
mov r11d, dword [rsp + 0xf8]
lea r14, [0x180000000]
mov r12, qword [rsp + 0xf0]
mov r10, r9
mov ebx, dword [rsp + 0xf8]
mov r9, r8
mov edi, dword [rsp + 0xf8]
mov r15, rcx
mov esi, dword [rsp + 0xf8]
lea eax, [r11 + 0x6d6]
mov ebp, dword [rsp + 0xf8]
mov r13d, r11d
mov dword [rsp + 0x68], eax
cmp r11d, eax
jae 0x1800598ab
lea rdx, [0x180117400]
cmp r13d, 0x127
ja 0x1800595b5
je 0x180059598
lea eax, [r13 - 0x2d]
cmp eax, 0xa6
ja case.0x180059401.52
movzx eax, byte [r14 + rax + 0x59f74]
mov ecx, dword [r14 + rax*4 + 0x59f54]
add rcx, r14
jmp rcx
mov dword [0x180117c00], 1
mov dword [rsp + 0x48], 0
jmp case.0x180059401.52
mov edi, dword [r12]
mov ebx, dword [r12 + 4]
mov esi, dword [r12 + 8]
jmp case.0x180059401.52
test r15, r15
je 0x18005978c
mov rcx, qword [r15 + 8]
mov rax, qword [r9]
test rcx, rcx
je 0x18005975b
mov qword [rsp + 0x60], rax
lea r9, [rsp + 0x60]
mov eax, dword [rcx]
lea r8, [rsp + 0x58]
mov rcx, r10
mov dword [rsp + 0x58], eax
mov edx, 0x21
call fcn.1800b7140
jmp case.0x180059401.52
mov rcx, qword [r12 + 0x40]
mov edx, 0xffffffff
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov r14, qword [r12 + 0x18]
mov r13, qword [r12 + 0x20]
cmp r14, r13
je 0x1800594d5
nop dword [rax]
cmp qword [r15 + 0x18], 0x10
mov rdx, r15
jb 0x18005949d
mov rdx, qword [r15]
cmp qword [r14 + 0x18], 0x10
mov rcx, r14
jb 0x1800594aa
mov rcx, qword [r14]
mov r8, qword [r14 + 0x10]
cmp r8, qword [r15 + 0x10]
jne 0x1800594bd
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x1800594d1
add r14, 0x28
cmp r14, r13
jne 0x180059490
mov r13d, 0xd3
jmp case.0x180059401.52
inc dword [r14 + 0x24]
mov r13d, 0xd3
jmp case.0x180059401.52
movsxd r8, dword [rsp + 0x48]
shl r8, 9
add r8, rdx
mov byte [r8], 0
mov ecx, dword [r15]
sub ecx, 6
je 0x180059543
sub ecx, 2
je 0x18005950b
sub ecx, 1
je 0x18005950b
cmp ecx, 1
jne 0x180059796
mov eax, dword [r9]
lea rdx, [rsp + 0x40]
mov qword [rsp + 0x20], r8
lea r9, [rsp + 0x60]
mov r8d, 0x73
mov qword [rsp + 0x40], 0x200
mov rcx, r12
mov dword [rsp + 0x60], eax
call fcn.180050f00
mov r13d, 0xc4
jmp case.0x180059401.52
mov r9, r12
mov qword [rsp + 0x40], 0x200
lea rdx, [rsp + 0x40]
mov ecx, 0x54
call fcn.180043810
mov r13d, 0xc4
jmp case.0x180059401.52
mov ebp, dword [r12 + 0xc]
jmp case.0x180059401.52
mov eax, 0x60
nop dword [rax + rax]
cmp eax, 0x60
je 0x1800597be
add eax, 0x35
cmp eax, 0x95
jb 0x180059580
jmp case.0x180059401.52
add edi, 0xd76aa478
mov eax, ebp
xor eax, esi
and eax, ebx
xor eax, ebp
add eax, dword [r15]
add edi, eax
rol edi, 7
add edi, ebx
jmp case.0x180059401.52
cmp r13d, 0x1a4
ja 0x180059726
je 0x1800596dc
mov eax, r13d
sub eax, 0x12b
je 0x1800595f4
sub eax, 0x16
je 0x180059892
cmp eax, 0xf
jne case.0x180059401.52
mov rcx, qword [r12 + 0x40]
call qword [sym.imp.KERNEL32.dll_ReleaseMutex]
jmp case.0x180059401.52
mov r14d, 0x117
nop word [rax + rax]
mov eax, r14d
sub eax, 0x117
je 0x180059615
cmp eax, 0x4e
je 0x180059f33
jmp 0x18005965c
mov rax, qword [r9]
lea rcx, [rsp + 0x70]
mov qword [rsp + 0x30], r10
xor r9d, r9d
mov qword [rsp + 0x40], rax
xor r8d, r8d
lea rax, [rsp + 0x40]
mov rdx, r15
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0xdf
call fcn.1800581e0
mov r10, qword [rsp + 0xe8]
mov r9, qword [rsp + 0xe0]
mov byte [rsp + 0x50], 1
add r14d, 0x4e
cmp r14d, 0x1b3
jb 0x180059600
mov eax, ebp
xor eax, esi
and eax, ebx
xor eax, ebp
add eax, 0xf57c0faf
add eax, dword [r15 + 0x10]
add edi, eax
mov eax, esi
xor eax, ebx
rol edi, 7
add edi, ebx
and eax, edi
xor eax, esi
add eax, 0x4787c62a
add eax, dword [r15 + 0x14]
add ebp, eax
mov eax, edi
xor eax, ebx
rol ebp, 0xc
add ebp, edi
and eax, ebp
xor eax, ebx
add eax, 0xa8304613
add eax, dword [r15 + 0x18]
add esi, eax
ror esi, 0xf
add esi, ebp
add r13d, 0x7d
lea r14, [0x180000000]
cmp r13d, dword [rsp + 0x68]
jae 0x1800598a3
mov r10, qword [rsp + 0xe8]
mov r9, qword [rsp + 0xe0]
jmp 0x1800593c4
mov eax, esi
xor eax, ebx
and eax, edi
xor eax, esi
add eax, 0xe8c7b756
add eax, dword [r15 + 4]
add ebp, eax
mov eax, edi
xor eax, ebx
rol ebp, 0xc
add ebp, edi
and eax, ebp
xor eax, ebx
add eax, 0x242070db
add eax, dword [r15 + 8]
add esi, eax
mov eax, ebp
xor eax, edi
ror esi, 0xf
add esi, ebp
and eax, esi
xor eax, edi
add eax, 0xc1bdceee
add eax, dword [r15 + 0xc]
add ebx, eax
ror ebx, 0xa
add ebx, esi
jmp case.0x180059401.52
mov eax, r13d
sub eax, 0x221
je 0x180059669
cmp eax, 0x7d
jne case.0x180059401.52
add ebx, 0xfd469501
mov eax, ebp
xor eax, edi
and eax, esi
xor eax, edi
add eax, dword [r15 + 0x1c]
add ebx, eax
ror ebx, 0xa
add ebx, esi
jmp case.0x180059401.52
mov qword [rsp + 0x28], 0
lea rdx, [rsp + 0x40]
mov r9, r12
mov qword [rsp + 0x20], r15
mov r8, r10
mov qword [rsp + 0x40], rax
mov ecx, 0x7c
call fcn.18005a290
mov byte [rsp + 0x50], al
jmp 0x180059f33
mov byte [rsp + 0x50], 0
jmp 0x180059f33
mov r9, r12
mov dword [rsp + 0xf8], ILClone
xor r8d, r8d
lea rdx, [rsp + 0xf8]
mov ecx, 0xf1
call fcn.1800b1b80
jmp 0x180059f38
mov rcx, qword [r10]
movzx edx, byte [rcx + r9]
lea eax, [rdx - 0x30]
cmp al, 9
ja 0x1800597f4
lea rax, [rcx + 1]
mov qword [r10], rax
mov dword [r12 + 0x88], 0x50
mov dword [r12 + 0x8c], 0x56
mov rax, qword [r10]
jmp 0x180059f38
cmp dl, 0x2e
jne 0x180059814
lea rax, [rcx + 1]
mov qword [r10], rax
mov dword [r12 + 0x88], 0x2c
mov rax, qword [r10]
jmp 0x180059f38
mov ebx, 0x6f
nop dword [rax]
mov eax, ebx
sub eax, 0x6f
je 0x180059873
sub eax, 1
je 0x18005986a
sub eax, 1
je 0x180059860
sub eax, 1
je 0x180059849
cmp eax, 1
jne 0x18005987b
mov dword [r12 + 0x88], 0
jmp 0x18005987b
mov rax, qword [r12 + 0xc0]
test rax, rax
je 0x18005987b
mov rdx, r15
mov rcx, r12
call rax
jmp 0x18005987b
inc qword [r12 + 0xd0]
jmp 0x18005987b
mov dword [r15], 0x14
jmp 0x18005987b
mov qword [r15 + 0x10], 1
inc ebx
cmp ebx, 0x74
jb 0x180059820
mov r10, qword [rsp + 0xe8]
mov rax, qword [r10]
jmp 0x180059f38
movsxd rax, dword [rsp + 0x48]
shl rax, 9
add rax, rdx
jmp 0x180059f38
mov r11d, dword [rsp + 0xf8]
lea r8d, [r11 + 0x267]
mov edx, r11d
cmp r11d, r8d
jae 0x180059c57
nop
cmp edx, 0x14c
ja 0x180059adf
je 0x180059a8c
lea eax, [rdx - 0x2d]
cmp eax, 0xf6
ja case.0x180059b04.380
movzx eax, byte [r14 + rax + 0x5a03c]
mov ecx, dword [r14 + rax*4 + 0x5a01c]
add rcx, r14
jmp rcx
mov eax, ebp
mov ecx, esi
xor eax, esi
xor ecx, ebx
and eax, ebx
xor eax, ebp
add eax, 0x698098d8
add eax, dword [r15 + 0x20]
add edi, eax
rol edi, 7
add edi, ebx
and ecx, edi
mov eax, edi
xor eax, ebx
xor ecx, esi
add ecx, ebp
mov ebp, dword [r15 + 0x24]
add ebp, 0x8b44f7af
add ebp, ecx
rol ebp, 0xc
add ebp, edi
and eax, ebp
xor eax, ebx
add eax, 0xffff5bb1
add eax, dword [r15 + 0x28]
add esi, eax
ror esi, 0xf
add esi, ebp
jmp case.0x180059b04.380
mov eax, esi
xor eax, ebx
and eax, edi
xor eax, esi
add esi, 0xa679438e
add eax, 0xfd987193
add eax, dword [r15 + 0x34]
add ebp, eax
mov eax, edi
xor eax, ebx
rol ebp, 0xc
add ebp, edi
and eax, ebp
xor eax, ebx
add eax, dword [r15 + 0x38]
add esi, eax
ror esi, 0xf
add esi, ebp
jmp case.0x180059b04.380
mov ecx, ebp
mov eax, esi
xor ecx, edi
and ecx, esi
xor ecx, edi
add ecx, ebx
mov ebx, dword [r15 + 0x3c]
add ebx, 0x49b40821
add ebx, ecx
ror ebx, 0xa
add ebx, esi
xor eax, ebx
and eax, ebp
xor eax, esi
add eax, 0xf61e2562
add eax, dword [r15 + 4]
add edi, eax
rol edi, 5
add edi, ebx
mov eax, edi
xor eax, ebx
and eax, esi
xor eax, ebx
add eax, 0xc040b340
add eax, dword [r15 + 0x18]
add ebp, eax
rol ebp, 9
add ebp, edi
jmp case.0x180059b04.380
mov ecx, ebp
xor ecx, edi
and ecx, ebx
xor ecx, edi
add ecx, esi
mov esi, dword [r15 + 0x3c]
add esi, 0xd8a1e681
add esi, ecx
rol esi, 0xe
add esi, ebp
jmp case.0x180059b04.380
add esi, 0x265e5a51
mov eax, ebp
xor eax, edi
and eax, ebx
xor eax, edi
add eax, dword [r15 + 0x2c]
add esi, eax
rol esi, 0xe
add esi, ebp
jmp case.0x180059b04.380
mov eax, ebp
xor eax, edi
and eax, esi
xor eax, edi
add edi, 0x6b901122
add eax, 0x895cd7be
add eax, dword [r15 + 0x2c]
add ebx, eax
mov eax, ebp
xor eax, esi
ror ebx, 0xa
add ebx, esi
and eax, ebx
xor eax, ebp
add eax, dword [r15 + 0x30]
add edi, eax
rol edi, 7
add edi, ebx
jmp case.0x180059b04.380
mov eax, ebp
xor eax, esi
and eax, edi
xor eax, ebp
add eax, 0xe9b6c7aa
add eax, dword [r15]
add ebx, eax
mov eax, esi
ror ebx, 0xc
add ebx, esi
xor eax, ebx
and eax, ebp
xor eax, esi
add eax, 0xd62f105d
add eax, dword [r15 + 0x14]
add edi, eax
rol edi, 5
add edi, ebx
mov eax, edi
xor eax, ebx
and eax, esi
xor eax, ebx
add eax, 0x2441453
add eax, dword [r15 + 0x28]
add ebp, eax
rol ebp, 9
add ebp, edi
jmp case.0x180059b04.380
mov ecx, ebp
xor ecx, esi
and ecx, edi
xor ecx, ebp
add ecx, ebx
mov ebx, dword [r15 + 0x10]
add ebx, 0xe7d3fbc8
add ebx, ecx
mov ecx, esi
ror ebx, 0xc
add ebx, esi
xor ecx, ebx
and ecx, ebp
xor ecx, esi
add ecx, edi
mov edi, dword [r15 + 0x24]
add edi, 0x21e1cde6
add edi, ecx
rol edi, 5
add edi, ebx
mov eax, edi
xor eax, ebx
and eax, esi
xor eax, ebx
add eax, 0xc33707d6
add eax, dword [r15 + 0x38]
add ebp, eax
rol ebp, 9
add ebp, edi
jmp case.0x180059b04.380
lea eax, [rdx - 0x175]
cmp eax, 0xf6
ja case.0x180059b04.380
movzx eax, byte [r14 + rax + 0x5a154]
mov ecx, dword [r14 + rax*4 + 0x5a134]
add rcx, r14
jmp rcx
mov eax, ebp
add ebp, 0x8771f681
xor eax, esi
xor eax, ebx
add eax, 0xfffa3942
add eax, dword [r15 + 0x14]
add edi, eax
mov eax, esi
rol edi, 4
add edi, ebx
xor eax, edi
xor eax, ebx
add eax, dword [r15 + 0x20]
add ebp, eax
rol ebp, 0xb
add ebp, edi
jmp case.0x180059b04.380
add edi, 0xa9e3e905
mov eax, esi
xor eax, ebx
and eax, ebp
xor eax, esi
add eax, dword [r15 + 0x34]
add edi, eax
rol edi, 5
add edi, ebx
jmp case.0x180059b04.380
add esi, 0x6d9d6122
mov eax, ebp
xor eax, edi
xor eax, ebx
add eax, dword [r15 + 0x2c]
add esi, eax
rol esi, 0x10
add esi, ebp
jmp case.0x180059b04.380
add ebx, 0xfde5380c
mov ecx, ebp
xor ecx, esi
mov eax, ecx
xor eax, edi
add edi, 0xa4beea44
add eax, dword [r15 + 0x38]
add ebx, eax
ror ebx, 9
add ebx, esi
xor ecx, ebx
add ecx, dword [r15 + 4]
add edi, ecx
rol edi, 4
add edi, ebx
jmp case.0x180059b04.380
mov ecx, esi
xor ecx, edi
xor ecx, ebx
add ecx, ebp
mov ebp, dword [r15 + 0x10]
add ebp, 0x4bdecfa9
add ebp, ecx
rol ebp, 0xb
add ebp, edi
mov eax, ebp
xor eax, edi
xor eax, ebx
add eax, 0xf6bb4b60
add eax, dword [r15 + 0x1c]
add esi, eax
rol esi, 0x10
add esi, ebp
jmp case.0x180059b04.380
mov eax, ebp
xor eax, edi
and eax, ebx
xor eax, edi
add eax, 0xf4d50d87
add eax, dword [r15 + 0xc]
add esi, eax
mov eax, ebp
rol esi, 0xe
add esi, ebp
xor eax, esi
and eax, edi
xor eax, ebp
add eax, dword [r15 + 0x20]
add ebx, 0x455a14ed
jmp 0x180059c44
mov ecx, edi
xor ecx, ebx
and ecx, esi
xor ecx, ebx
add ecx, ebp
mov ebp, dword [r15 + 8]
add ebp, 0xfcefa3f8
add ebp, ecx
rol ebp, 9
add ebp, edi
mov eax, ebp
xor eax, edi
and eax, ebx
xor eax, edi
add eax, 0x676f02d9
add eax, dword [r15 + 0x1c]
add esi, eax
mov eax, ebp
rol esi, 0xe
add esi, ebp
xor eax, esi
and eax, edi
xor eax, ebp
add eax, 0x8d2a4c8a
add eax, dword [r15 + 0x30]
add ebx, eax
ror ebx, 0xc
add ebx, esi
add edx, 0x29
cmp edx, r8d
jb 0x1800598c0
lea eax, [r11 - 0xe]
cmp r11d, eax
jbe 0x180059f33
lea edx, [r11 - 0x20]
mov r8d, ILClone
nop
cmp edx, 0xd
ja case.default.0x180059c84
mov ecx, dword [r14 + rdx*4 + 0x5a24c]
add rcx, r14
jmp rcx
add dword [r12 + 4], ebx
jmp case.default.0x180059c84
add ebx, 0xfc93a039
mov eax, edi
not eax
or eax, esi
xor eax, ebp
add eax, dword [r15 + 0x14]
add ebx, eax
ror ebx, 0xb
add ebx, esi
jmp case.default.0x180059c84
mov eax, ebp
add ebp, 0xbd3af235
not eax
or eax, ebx
xor eax, esi
add eax, 0xf7537e82
add eax, dword [r15 + 0x10]
add edi, eax
mov eax, esi
not eax
rol edi, 6
add edi, ebx
or eax, edi
xor eax, ebx
add eax, dword [r15 + 0x2c]
add ebp, eax
rol ebp, 0xa
add ebp, edi
jmp case.default.0x180059c84
mov eax, ebp
not eax
or eax, ebx
xor eax, esi
add eax, 0x655b59c3
add eax, dword [r15 + 0x30]
add edi, eax
mov eax, esi
not eax
rol edi, 6
add edi, ebx
add esi, 0xffeff47d
or eax, edi
xor eax, ebx
add eax, 0x8f0ccc92
add eax, dword [r15 + 0xc]
add ebp, eax
mov eax, ebx
not eax
rol ebp, 0xa
add ebp, edi
or eax, ebp
xor eax, edi
add eax, dword [r15 + 0x28]
add esi, eax
rol esi, 0xf
jmp 0x180059f25
add esi, 0xab9423a7
mov eax, ebx
not eax
or eax, ebp
xor eax, edi
add eax, dword [r15 + 0x38]
add esi, eax
rol esi, 0xf
jmp 0x180059f25
mov ecx, ebp
add ebp, 0xeaa127fa
xor ecx, esi
mov eax, ecx
xor eax, edi
add edi, 0x289b7ec6
add eax, 0xbebfbc70
add eax, dword [r15 + 0x28]
add ebx, eax
mov eax, esi
ror ebx, 9
add ebx, esi
xor ecx, ebx
add ecx, dword [r15 + 0x34]
add edi, ecx
rol edi, 4
add edi, ebx
xor eax, edi
xor eax, ebx
add eax, dword [r15]
add ebp, eax
rol ebp, 0xb
add ebp, edi
jmp case.default.0x180059c84
mov eax, edi
add edi, 0x6fa87e4f
not eax
or eax, esi
xor eax, ebp
add eax, 0x85845dd1
add eax, dword [r15 + 4]
add ebx, eax
mov eax, ebp
not eax
ror ebx, 0xb
add ebx, esi
or eax, ebx
xor eax, esi
add eax, dword [r15 + 0x20]
add edi, eax
rol edi, 6
add edi, ebx
jmp case.default.0x180059c84
mov eax, ebp
xor eax, esi
xor eax, edi
add eax, 0xc4ac5665
add eax, dword [r15 + 8]
add ebx, eax
mov eax, ebp
not eax
ror ebx, 9
add ebx, esi
add ebp, 0x432aff97
or eax, ebx
xor eax, esi
add eax, 0xf4292244
add eax, dword [r15]
add edi, eax
mov eax, esi
not eax
rol edi, 6
add edi, ebx
or eax, edi
xor eax, ebx
add eax, dword [r15 + 0x1c]
add ebp, eax
rol ebp, 0xa
add ebp, edi
jmp case.default.0x180059c84
mov eax, ebp
xor eax, edi
xor eax, ebx
add ebx, 0x4881d05
add eax, 0xd4ef3085
add eax, dword [r15 + 0xc]
add esi, eax
mov eax, ebp
rol esi, 0x10
add esi, ebp
xor eax, esi
xor eax, edi
add eax, dword [r15 + 0x18]
add ebx, eax
ror ebx, 9
add ebx, esi
jmp case.default.0x180059c84
mov eax, ebx
mov ecx, esi
not eax
not ecx
or ecx, edi
xor ecx, ebx
add ebx, 0x4e0811a1
add ecx, ebp
mov ebp, dword [r15 + 0x3c]
add ebp, 0xfe2ce6e0
add ebp, ecx
rol ebp, 0xa
add ebp, edi
or eax, ebp
xor eax, edi
add eax, 0xa3014314
add eax, dword [r15 + 0x18]
add esi, eax
mov eax, edi
not eax
rol esi, 0xf
add esi, ebp
or eax, esi
xor eax, ebp
add eax, dword [r15 + 0x34]
add ebx, eax
ror ebx, 0xb
add ebx, esi
jmp case.default.0x180059c84
mov eax, ebx
add esi, 0x2ad7d2bb
not eax
mov ecx, edi
or eax, ebp
not ecx
xor eax, edi
add eax, dword [r15 + 8]
add esi, eax
rol esi, 0xf
add esi, ebp
or ecx, esi
xor ecx, ebp
add ecx, ebx
mov ebx, dword [r15 + 0x24]
add ebx, 0xeb86d391
add ebx, ecx
ror ebx, 0xb
add ebx, esi
add dword [r12], edi
jmp case.default.0x180059c84
mov ecx, ebp
mov eax, esi
xor ecx, esi
add ebp, 0xe6db99e5
xor ecx, ebx
add ecx, edi
mov edi, dword [r15 + 0x24]
add edi, 0xd9d4d039
add edi, ecx
rol edi, 4
add edi, ebx
xor eax, edi
xor eax, ebx
add eax, dword [r15 + 0x30]
add ebp, eax
rol ebp, 0xb
add ebp, edi
jmp case.default.0x180059c84
add dword [r12 + 8], esi
add dword [r12 + 0xc], ebp
jmp case.default.0x180059c84
mov ecx, ebp
xor ecx, edi
xor ecx, ebx
add ecx, esi
mov esi, dword [r15 + 0x3c]
add esi, 0x1fa27cf8
add esi, ecx
rol esi, 0x10
add esi, ebp
dec edx
sub r8, 1
jne 0x180059c70
mov rax, qword [rsp + 0x50]
mov rbx, qword [rsp + 0xd0]
add rsp, 0x90
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret