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

Disassembly:
mov qword [rsp + 0x10], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x30]
sub rsp, 0x130
mov rax, qword [0x1800a74e0]
xor rax, rsp
mov qword [rbp + 0x28], rax
mov r14d, edx
mov qword [rbp - 0x38], r9
xor ebx, ebx
mov dword [rsp + 0x70], edx
mov rsi, r9
mov dword [rbp - 0x78], edx
mov r9d, edx
mov qword [rbp - 0x20], r8
mov r8, qword [rbp - 0x40]
lea r11, [0x180000000]
add edx, 0xffffffef
mov qword [rsp + 0x68], rcx
mov dword [rbp - 0x68], ebx
mov r10, rcx
mov dword [rsp + 0x50], edx
cmp r14d, edx
jbe 0x18003063f
mov edx, dword [rsp + 0x70]
lea edi, [r14 - 0x34]
mov r9d, dword [rsp + 0x70]
mov r13d, dword [rsp + 0x70]
mov r12, qword [rbp - 0x70]
mov eax, dword [rsp + 0x50]
mov r15, qword [rbp - 0x50]
mov dword [rbp - 0x80], edi
mov qword [rsp + 0x78], r8
mov dword [rsp + 0x5c], edx
mov dword [rsp + 0x58], r9d
nop dword [rax]
cmp edi, 0x48
ja case.default.0x1800305f9
movzx eax, byte [r11 + rdi + 0x30df8]
mov ecx, dword [r11 + rax*4 + 0x30db0]
add rcx, r11
jmp rcx
mov rcx, qword [rbp - 0x58]
xor r8d, r8d
lea edx, [r8 + 0x68]
call fcn.18003c5c0
mov r8, qword [rsp + 0x78]
mov edx, dword [rsp + 0x5c]
mov r9d, dword [rsp + 0x58]
lea r11, [0x180000000]
mov r10, qword [rsp + 0x68]
mov eax, dword [rsp + 0x50]
dec r14d
dec edi
mov dword [rbp - 0x78], r14d
mov dword [rbp - 0x80], edi
cmp r14d, eax
ja 0x1800305e0
mov r9d, dword [rsp + 0x70]
lea edx, [r9 + 0x21c]
cmp r9d, edx
jae case.0x1800305f9.6
movabs r11, 0x4014000000000000
lea rdi, [0x180000000]
movabs r10, 0x3ff0000000000000
nop word [rax + rax]
cmp r9d, 0x154
ja 0x180030cb2
je 0x180030ca9
lea eax, [r9 - 0x46]
cmp eax, 0xf0
ja case.0x180030cd6.378
movzx eax, byte [rdi + rax + 0x30e6c]
mov ecx, dword [rdi + rax*4 + 0x30e44]
add rcx, rdi
jmp rcx
mov dword [rsp + 0x60], 0x44c
jmp case.0x1800305f9.17
mov dword [r8 + 0x10], 0xffffffff
jmp case.0x1800305f9.17
mov r8, rbx
mov qword [rsp + 0x78], rbx
jmp case.0x1800305f9.17
mov dword [r8 + 4], ebx
mov dword [r8 + 0x18], 0xffffffff
jmp case.0x1800305f9.17
lea r9, [rbp - 0x80]
mov dword [rbp - 0x78], ebx
lea r8, [rbp - 0x78]
mov qword [rbp - 0x80], 0x5060
mov edx, 0x11f
lea rcx, [0x180096770]
call fcn.1800236a0
mov qword [rsp + 0x78], rax
mov r8, rax
test rax, rax
jne 0x180030610
mov rax, rbx
jmp 0x18003099c
cmp dword [rsi + 0x14], 0
mov r10d, ebx
jbe 0x180030620
mov ebx, dword [rbp - 0x64]
mov r12d, dword [rbp - 0x60]
nop
mov r9d, reloc.SHELL32.dll_ILRemoveLastID
mov eax, r9d
sub eax, 0x11
je 0x180030772
sub eax, 0x42
je 0x180030766
cmp eax, 0x42
jne 0x180030780
mov rdx, qword [rsi + 8]
mov eax, ebx
mov r8d, ebx
and eax, 7
shr r8, 3
movzx ecx, byte [r8 + rdx]
bts ecx, eax
mov byte [r8 + rdx], cl
jmp 0x180030780
xor edx, edx
mov eax, r13d
div dword [rsi + 0x10]
mov ebx, edx
jmp 0x180030780
mov eax, r10d
mov r13d, dword [r11 + rax*4 + 0x88ac0]
xor r13d, r12d
add r9d, 0x42
cmp r9d, 0xd7
jb 0x180030736
inc r10d
mov dword [rbp - 0x64], ebx
cmp r10d, dword [rsi + 0x14]
jb 0x180030730
mov r12, qword [rbp - 0x70]
xor ebx, ebx
mov r8, qword [rsp + 0x78]
mov edx, dword [rsp + 0x5c]
mov r9d, dword [rsp + 0x58]
jmp 0x180030620
mov rcx, qword [r10]
call qword [rsi]
mov dword [rbp - 0x60], eax
jmp 0x18003060b
mov ecx, ebx
mov dword [rsp + 0x60], ebx
mov rbx, qword [rbp - 0x58]
nop dword [rax]
mov edi, 0x9e
mov eax, edi
sub eax, 0x9e
je 0x18003082e
cmp eax, 0x6c
jne 0x180030838
mov eax, ecx
lea rdx, [rbp - 0x70]
mov r9d, 0x34
lea rcx, [rbp - 0x78]
mov r8, rbx
lea rax, [rax*4 + 0x6f74f0]
add rax, r11
mov qword [rbp - 0x78], rax
mov qword [rbp - 0x70], rax
call fcn.18003cc20
xor r9d, r9d
xor r8d, r8d
mov edx, 0xdf
mov rcx, rbx
call fcn.180081d40
mov ecx, dword [rsp + 0x60]
lea r11, [0x180000000]
jmp 0x180030838
mov eax, ecx
mov dword [r11 + rax*4 + 0x6f74f0], ecx
add edi, 0x6c
cmp edi, 0x176
jb 0x1800307d5
inc ecx
mov dword [rsp + 0x60], ecx
cmp ecx, 0x3e8
jb 0x1800307d0
mov rsi, qword [rbp - 0x58]
xor ebx, ebx
mov dword [rsp + 0x60], ebx
nop
mov edi, 0x95
mov eax, edi
sub eax, 0x93
je 0x1800308c4
sub eax, 1
je 0x180030897
cmp eax, 1
jne 0x1800308d1
lea rax, [rsp + 0x60]
mov r8, rsi
mov edx, 0xd6
mov qword [rbp - 0x70], rax
lea rcx, [rbp - 0x70]
call fcn.180041100
mov r12, rax
jmp 0x1800308d1
mov qword [rsp + 0x40], rbx
xor r9d, r9d
mov qword [rsp + 0x38], rbx
xor r8d, r8d
mov dword [rsp + 0x30], ILFree
xor edx, edx
mov qword [rsp + 0x28], rbx
xor ecx, ecx
mov qword [rsp + 0x20], r12
call fcn.1800807d0
jmp 0x1800308d1
mov rdx, r12
mov ecx, 0x53
call fcn.180048560
dec edi
cmp edi, 0x92
ja 0x180030865
mov eax, dword [rsp + 0x60]
inc eax
mov qword [rbp - 0x70], r12
mov dword [rsp + 0x60], eax
cmp eax, 0x3e8
jb 0x180030860
mov rsi, qword [rbp - 0x38]
mov edi, dword [rbp - 0x80]
jmp 0x18003060b
mov rdi, qword [rbp - 0x30]
mov eax, edx
cmp rax, rdi
jae 0x180030994
cmp qword [rsi + 0x18], 0x10
mov rax, rsi
jb 0x18003091c
mov rax, qword [rsi]
mov r9d, dword [rax + 4]
mov dword [rsp + 0x58], r9d
cmp r9, rdi
jae 0x180030994
mov edi, dword [rbp - 0x80]
mov dword [r10 + 0x20], edx
jmp case.0x1800305f9.17
mov eax, 0x6c
nop dword [rax + rax]
cmp eax, 0x6c
je 0x180030bd7
add eax, 0x87
cmp eax, 0xf3
jb 0x180030940
cmp qword [rsi + 0x10], r15
jae 0x180030a0b
mov edi, 0xf7
cmp edi, 0xf7
je 0x1800309f4
cmp edi, 0x1ee
je 0x1800309c3
cmp edi, 0x2e5
jne 0x1800309f9
cmp byte [rsp + 0x54], 0
je 0x180030994
mov rcx, qword [rbp - 0x40]
lea rdx, [rbp - 0x18]
call sub.IMM32.dll_ImmSetCompositionFontA
mov byte [rbp - 0x48], 0
mov rax, qword [rbp - 0x48]
mov rcx, qword [rbp + 0x28]
xor rcx, rsp
call fcn.1800864a0
mov rbx, qword [rsp + 0x178]
add rsp, 0x130
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
xorps xmm0, xmm0
mov qword [rbp - 0x40], rbx
xor eax, eax
lea rdx, [rbp - 0x18]
xor ecx, ecx
mov qword [rbp + 0x18], rax
movups xmmword [rbp - 0x18], xmm0
mov dword [rbp + 0x20], eax
movups xmmword [rbp - 8], xmm0
movups xmmword [rbp + 8], xmm0
call sub.IMM32.dll_ImmGetCompositionFontA
test eax, eax
jne 0x1800309f9
mov byte [rsp + 0x54], al
jmp 0x1800309f9
mov byte [rsp + 0x54], 1
add edi, 0xf7
cmp edi, 0x2e5
jbe 0x180030964
mov rdi, qword [rsi + 0x10]
xor edx, edx
sub rdi, r15
mov rcx, rsi
mov qword [rbp - 0x30], rdi
call fcn.1800171e0
mov r8, qword [rsp + 0x78]
mov edi, dword [rbp - 0x80]
mov edx, dword [rax]
mov dword [rsp + 0x5c], edx
jmp 0x180030614
lea rax, [0x1800859d0]
mov ecx, 9
lea rdx, [rbp - 0x28]
mov qword [rbp - 0x28], rax
call fcn.18002da20
mov qword [rbp - 0x58], rax
jmp 0x18003060b
mov qword [r8 + 8], 0
mov dword [r8], ebx
jmp case.0x1800305f9.17
mov r15d, 8
mov qword [rbp - 0x50], r15
jmp case.0x1800305f9.17
mov rcx, qword [rbp - 0x50]
mov dword [r10 + 0x24], r9d
mov rax, qword [rsi + 0x10]
mov qword [rbp], ILClone
mov byte [rbp - 0x18], 0
cmp rax, rcx
jb 0x180030d9b
sub rax, rcx
mov r14, 0xffffffffffffffff
cmp rax, r14
cmovb r14, rax
cmp qword [rsi + 0x18], 0x10
mov rax, rsi
jb 0x180030ab3
mov rax, qword [rsi]
lea r15, [rax + rcx]
cmp r14, 0xf
ja 0x180030adb
mov r8, r14
mov qword [rbp - 8], r14
mov rdx, r15
lea rcx, [rbp - 0x18]
call sub.VCRUNTIME140.dll_memmove
mov byte [rbp + r14 - 0x18], 0
jmp 0x180030b7d
movabs rax, 0x7fffffffffffffff
cmp r14, rax
ja 0x180030da7
mov rsi, r14
or rsi, 0xf
cmp rsi, rax
jbe 0x180030aff
mov rsi, rax
jmp 0x180030b0c
cmp rsi, 0x16
mov eax, 0x16
cmovb rsi, rax
lea rcx, [rsi + 1]
cmp rcx, 0x1000
jb 0x180030b45
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x180030da1
mov rcx, rax
call fcn.180085cb4
test rax, rax
je 0x180030c13
lea rdi, [rax + 0x27]
and rdi, 0xffffffffffffffe0
mov qword [rdi - 8], rax
jmp 0x180030b57
test rcx, rcx
je 0x180030b54
call fcn.180085cb4
mov rdi, rax
jmp 0x180030b57
mov rdi, rbx
mov r8, r14
mov qword [rbp - 8], r14
mov rdx, r15
mov qword [rbp], rsi
mov rcx, rdi
call sub.VCRUNTIME140.dll_memcpy
mov rsi, qword [rbp - 0x38]
mov byte [rdi + r14], 0
mov qword [rbp - 0x18], rdi
mov edi, dword [rbp - 0x80]
mov rcx, qword [rsp + 0x68]
lea rdx, [rbp - 0x18]
or dword [rbp - 0x68], 1
call fcn.180016ed0
mov rdx, qword [rbp]
cmp rdx, 0x10
jb 0x180030bc6
mov rcx, qword [rbp - 0x18]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x180030bc1
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180030c13
call fcn.180085cf0
mov r14d, dword [rbp - 0x78]
mov r15, qword [rbp - 0x50]
mov byte [rbp - 0x48], 1
jmp 0x18003060b
mov rax, qword [rbp - 0x20]
mov rdx, qword [rsi]
movsxd r8, dword [rax]
test r8, r8
jle 0x180030c0b
mov rcx, rbx
nop dword [rax]
test rdx, rdx
je 0x180030713
movzx eax, byte [rcx + r10]
inc rcx
mov rdx, qword [rdx + rax*8 + 0x10]
cmp rcx, r8
jl 0x180030bf0
mov rax, rdx
jmp 0x18003099c
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov qword [r8 + 0x30], rbx
jmp case.0x180030cd6.378
mov dword [r8 + 0x70], 2
jmp case.0x180030cd6.378
mov dword [r8 + 0x38], ebx
mov dword [r8 + 0x3c], 0xa
mov dword [r8 + 0x58], ebx
jmp case.0x180030cd6.378
mov dword [r8 + 0x88], 2
jmp case.0x180030cd6.378
mov dword [r8 + 0x28], 3
mov dword [r8 + 0x14], 0xffffffff
mov dword [r8 + 0x40], ebx
mov qword [r8 + 0x50], r11
jmp case.0x180030cd6.378
mov dword [r8 + 0x84], ebx
jmp case.0x180030cd6.378
mov dword [r8 + 0x5c], ebx
mov dword [r8 + 0x60], 1
mov dword [r8 + 0x68], ebx
jmp case.0x180030cd6.378
mov dword [r8 + 0x1c], ebx
mov dword [r8 + 0x6c], ebx
jmp case.0x180030cd6.378
mov dword [r8 + 0x64], ebx
jmp case.0x180030cd6.378
mov dword [r8 + 0x44], ebx
jmp case.0x180030cd6.378
lea eax, [r9 - 0x172]
cmp eax, 0xd2
ja case.0x180030cd6.378
movzx eax, byte [rdi + rax + 0x30f84]
mov ecx, dword [rdi + rax*4 + 0x30f60]
add rcx, rdi
jmp rcx
mov qword [r8 + 0x1f80], rbx
mov qword [r8 + 0x1f88], rbx
jmp case.0x180030cd6.378
mov qword [r8 + 0x1fc0], rbx
mov qword [r8 + 0x1fc8], rbx
mov qword [r8 + 0x1fd0], rbx
jmp case.0x180030cd6.378
mov qword [r8 + 0x90], r10
jmp case.0x180030cd6.378
mov qword [r8 + 0x98], r10
jmp case.0x180030cd6.378
mov qword [r8 + 0x1f90], rbx
mov dword [r8 + 0x12f8], ebx
mov qword [r8 + 0x1fb0], rbx
mov qword [r8 + 0x1fb8], rbx
jmp case.0x180030cd6.378
mov qword [r8 + 0xec], 0
mov dword [r8 + 0x5020], ebx
jmp case.0x180030cd6.378
mov qword [r8 + 0xa0], r10
mov dword [r8 + 0x20], ebx
mov dword [r8 + 0x24], 0xffffffff
add r9d, 0x1e
cmp r9d, edx
jb 0x180030670
jmp case.0x1800305f9.6
xorps xmm0, xmm0
xor eax, eax
movups xmmword [r8 + 0x5024], xmm0
movups xmmword [r8 + 0x5034], xmm0
movups xmmword [r8 + 0x5044], xmm0
mov qword [r8 + 0x5054], rax
mov dword [r8 + 0x505c], eax
mov rax, r8
jmp 0x18003099c
call fcn.1800346e0
int3
call fcn.180034560
int3
call fcn.1800346a0
int3