Function at 0x180049860
Capabilities:
Create thread

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x530]
sub rsp, 0x630
movaps xmmword [rsp + 0x620], xmm6
mov rax, qword [0x1800a3d18]
xor rax, rsp
mov qword [rbp + 0x510], rax
mov qword [rbp - 0x48], r9
mov r13d, r8d
mov dword [rbp - 0x68], r8d
mov rsi, rdx
mov qword [rbp - 0x58], rdx
mov r14, rcx
mov qword [rbp - 0x50], rcx
movdqa xmm0, xmmword [0x18009bfb0]
movdqa xmmword [rbp + 0x200], xmm0
mov byte [rbp + 0x1f0], 0
movdqa xmm1, xmm0
movdqa xmmword [rbp + 0x220], xmm0
mov byte [rbp + 0x210], 0
movdqa xmmword [rbp + 0x240], xmm0
mov byte [rbp + 0x230], 0
movdqa xmmword [rbp + 0x260], xmm0
mov byte [rbp + 0x250], 0
movdqa xmmword [rbp + 0x290], xmm0
mov byte [rbp + 0x280], 0
movdqa xmmword [rbp + 0x2b0], xmm0
mov byte [rbp + 0x2a0], 0
xor ecx, ecx
mov qword [rbp + 0x80], rcx
mov word [rbp + 0x88], cx
movdqu xmmword [rbp + 0x9a], xmm0
mov byte [rbp + 0x8a], cl
mov qword [rbp + 0x50], rcx
mov word [rbp + 0x58], cx
movdqu xmmword [rbp + 0x6a], xmm0
mov byte [rbp + 0x5a], cl
xorps xmm0, xmm0
movdqa xmmword [rbp - 0x40], xmm0
mov qword [rbp - 0x30], rcx
mov qword [rbp - 0x28], rcx
movdqa xmmword [rbp - 0x20], xmm0
mov qword [rbp - 0x10], rcx
mov qword [rbp - 8], rcx
mov qword [rbp], rcx
mov qword [rbp + 0xb0], rcx
mov qword [rbp + 0xb8], rcx
mov qword [rbp + 0xc0], rcx
mov ecx, 0x30
call fcn.18008eb60
mov qword [rax], rax
mov qword [rax + 8], rax
mov qword [rax + 0x10], rax
mov word [rax + 0x18], 0x101
mov qword [rbp + 0xb8], rax
xor r11d, r11d
mov qword [rbp + 0xc8], r11
xorps xmm2, xmm2
movsd qword [rbp + 0xd0], xmm2
mov qword [rbp + 0xd8], r11
mov dword [rbp + 0xe0], 1
mov qword [rbp + 0xe8], r11
xorps xmm0, xmm0
movdqa xmmword [rbp + 0xf0], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0x100], xmm1
movdqa xmmword [rbp + 0x110], xmm0
mov qword [rbp + 0x120], r11
mov qword [rbp + 0x128], 0xffffffffffffffff
mov dword [rbp + 0x130], r11d
xor eax, eax
movups xmmword [rbp + 0x138], xmm0
movups xmmword [rbp + 0x148], xmm0
movups xmmword [rbp + 0x158], xmm0
movups xmmword [rbp + 0x168], xmm0
mov qword [rbp + 0x178], rax
movdqa xmm0, xmmword [0x18009bfb0]
movdqa xmmword [rbp + 0x190], xmm0
mov byte [rbp + 0x180], al
mov word [rbp + 0x1a0], r11w
mov dword [rbp + 0x1a4], r11d
mov qword [rbp + 0x1a8], r11
xorps xmm0, xmm0
movaps xmmword [rbp + 0x1b0], xmm0
movsd qword [rbp + 0x1c0], xmm2
mov byte [rbp + 0x1c8], al
mov qword [rbp + 0x1cc], r11
mov eax, r13d
mov dword [rsp + 0x58], eax
lea edi, [r13 + 0x12]
mov dword [rsp + 0x30], edi
lea r9, [0x180000000]
mov r15, qword [rsp + 0x60]
mov r12, qword [rsp + 0x60]
mov r10, qword [rsp + 0x60]
mov rdx, qword [rsp + 0x60]
movaps xmm6, xmmword [rbp + 0x20]
mov qword [rsp + 0x38], r10
mov qword [rsp + 0x48], rdx
cmp r13d, edi
mov rdi, qword [rsp + 0x68]
mov qword [rbp - 0x78], rdi
jae 0x18004a396
mov ebx, 0x1bb
lea r8d, [r11 + 0x73]
mov qword [rbp - 0x70], r15
mov qword [rbp - 0x60], r12
mov r13d, dword [rsp + 0x70]
mov dword [rsp + 0x50], r13d
mov ecx, dword [rsp + 0x30]
nop word [rax + rax]
add eax, 0xfffffef9
cmp eax, 0x1a
ja case.default.0x180049af9
mov ecx, dword [r9 + rax*4 + 0x4aa9c]
add rcx, r9
jmp rcx
movsd xmm0, qword [str.artparenta]
movsd qword [rbp + 0x2d2], xmm0
movzx eax, word [0x18009bc98]
mov word [rbp + 0x2da], ax
movzx eax, byte [0x18009bc9a]
mov byte [rbp + 0x2dc], al
lea rcx, [rbp + 0x2d0]
dec rcx
lea rcx, [rcx + 1]
cmp byte [rcx], 0
jne 0x180049b30
mov eax, dword [0x18009bc9c]
mov dword [rcx], eax
jmp case.0x180049af9.273
mov qword [rbp + 0x10], r11
jmp case.0x180049af9.273
movsxd rcx, dword [rsi]
mov edx, 4
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_calloc]
mov r15, rax
mov qword [rbp - 0x70], rax
test rax, rax
jne 0x180049cb5
mov ebx, 0xbf
cmp ebx, 0xbf
je 0x180049b9c
cmp ebx, 0x152
je 0x180049b91
cmp ebx, 0x1e5
jne 0x180049bd7
xor edi, edi
jmp case.0x180049c6e.11
mov rcx, r12
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
jmp 0x180049bd7
mov dword [rsp + 0x40], 1
mov dword [rbp - 0x80], 0xc
mov dword [rsp + 0x70], 0
lea rax, [rsp + 0x40]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x80]
lea r8, [0x180092c27]
lea rdx, [rsp + 0x70]
mov ecx, 0xe3
call fcn.18000a640
add ebx, 0x93
cmp ebx, 0x278
jb 0x180049b72
xor r11d, r11d
mov ebx, 0x1bb
mov rdx, qword [rsp + 0x48]
mov r10, qword [rsp + 0x38]
mov r8d, 0x73
lea r9, [0x180000000]
mov ecx, dword [rsp + 0x30]
mov eax, dword [rsp + 0x58]
inc eax
mov dword [rsp + 0x58], eax
cmp eax, ecx
jb 0x180049ae0
mov r8d, dword [rsp + 0x50]
mov r13d, dword [rbp - 0x68]
lea ebx, [r13 + 0x13]
mov dword [rsp + 0x30], ebx
cmp r13d, ebx
jae case.0x180049c6e.11
add r13d, 0xfffffef9
mov dword [rsp + 0x58], r13d
lea r9, [0x18000a1b0]
mov ebx, dword [rbp - 0x60]
mov rsi, qword [rbp - 0x70]
mov eax, dword [rsp + 0x30]
cmp r13d, 0x19
ja case.default.0x180049c6e
lea r14, [0x180000000]
mov ecx, dword [r14 + r13*4 + 0x4ab08]
add rcx, r14
jmp rcx
lea rcx, [rbp + 0x2d0]
dec rcx
nop word [rax + rax]
lea rcx, [rcx + 1]
cmp byte [rcx], 0
jne 0x180049c80
mov eax, dword [str.ce.c]
mov dword [rcx], eax
movzx eax, byte [0x18009bca4]
mov byte [rcx + 4], al
mov r8d, 2
lea rdx, [0x18009bca8]
lea rcx, [rbp + 0x2d0]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncat]
xor r11d, r11d
jmp 0x180049bed
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, eax
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_srand]
lea rax, [rbp + 0x2d0]
mov r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x180049ce0
lea rdx, [rbp + 0x2d0]
lea rcx, [rbp + 0x1f0]
call fcn.180027360
xor r11d, r11d
jmp 0x180049bed
movsxd rcx, dword [rsi]
mov edx, 4
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_calloc]
mov r10, rax
mov qword [rsp + 0x38], rax
test rax, rax
jne 0x18004a377
mov ebx, 0xff
mov r13, qword [rsp + 0x48]
nop
cmp ebx, 0xff
je 0x180049d8e
cmp ebx, 0x5ba4
je 0x180049d7a
cmp ebx, 0xb649
je 0x180049d6f
cmp ebx, 0x110ee
je 0x180049d5e
cmp ebx, 0x16b93
je case.0x180049c6e.11
jmp 0x180049dc9
xor r11d, r11d
mov edi, r11d
mov qword [rbp - 0x78], r11
mov qword [rsp + 0x68], r11
jmp 0x180049dcc
mov rcx, r13
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
jmp 0x180049dc9
mov rcx, r12
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rcx, r15
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
jmp 0x180049dc9
mov dword [rsp + 0x70], 1
mov dword [rbp - 0x80], 0xc
mov dword [rsp + 0x40], 0
lea rax, [rsp + 0x70]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x80]
lea r8, [0x180092c27]
lea rdx, [rsp + 0x40]
mov ecx, 0xe3
call fcn.18000a640
xor r11d, r11d
add ebx, 0x5aa5
cmp ebx, 0x1c539
jbe 0x180049d30
mov rdx, r13
mov r13d, dword [rsp + 0x50]
mov ebx, 0x1bb
jmp 0x180049bf2
mov word [rbp + 0x2d0], r8w
mov r8d, 1
lea rdx, [0x180095310]
lea rcx, [rbp + 0x2d0]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncat]
xor r11d, r11d
jmp 0x180049bed
xor r9d, r9d
xor edx, edx
mov r8d, StrCmpICA
lea rcx, [0x1800a3c28]
call fcn.180043ea0
test al, al
jne 0x180049cb5
mov ebx, 0xef
nop
cmp ebx, 0x2a03
ja 0x180049f00
je 0x180049fbc
cmp ebx, 0xef
je 0x180049ed9
cmp ebx, 0xb34
je 0x180049eb4
cmp ebx, 0x1579
je 0x180049e8e
cmp ebx, 0x1fbe
jne 0x180049fbc
mov eax, 0x5249
mov word [rbp + 0x2ca], ax
mov byte [rbp + 0x2cc], 0
jmp 0x180049fbc
mov r8d, 2
lea rdx, [0x18009bced]
lea rcx, [rbp + 0x2c8]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncpy]
mov byte [rbp + 0x2ca], 0
jmp 0x180049fbc
mov eax, dword [0x18009bcb1]
mov dword [rbp + 0x2c3], eax
movzx eax, byte [0x18009bcb5]
mov byte [rbp + 0x2c7], al
mov byte [rbp + 0x2c8], 0
jmp 0x180049fbc
movzx eax, word [0x18009bd4f]
mov word [rbp + 0x2c0], ax
movzx eax, byte [0x18009bd51]
mov byte [rbp + 0x2c2], al
mov byte [rbp + 0x2c3], 0
jmp 0x180049fbc
cmp ebx, 0x3e8d
je 0x180049fbc
cmp ebx, 0x48d2
je 0x180049faf
cmp ebx, 0x5317
jne 0x180049fbc
mov dword [rsp + 0x68], 1
mov rdi, qword [rsp + 0x68]
lea rcx, [rbp + 0x128]
call fcn.180003180
mov rbx, qword [rbp + 0x110]
test rbx, rbx
je 0x18004a8a2
mov rsi, qword [rbp + reloc.SHLWAPI.dll_SHRegGetIntW]
cmp rbx, rsi
je 0x180049f78
nop dword [rax]
mov rcx, rbx
call fcn.180025e10
add rbx, 0x20
cmp rbx, rsi
jne 0x180049f60
mov rbx, qword [rbp + 0x110]
mov r8, qword [rbp + 0x120]
sub r8, rbx
sar r8, 5
mov rdx, rbx
lea rcx, [rbp + 0x110]
call fcn.18002bd50
xorps xmm0, xmm0
movdqa xmmword [rbp + 0x110], xmm0
xor r14d, r14d
mov qword [rbp + 0x120], r14
jmp 0x18004a8a5
lea rcx, [rbp + 0x2c0]
call qword [sym.imp.SHLWAPI.dll_UrlIsOpaqueA]
add ebx, 0xa45
cmp ebx, 0x5c6d
jbe 0x180049e40
jmp 0x180049be5
mov word [rsp + 0x40], bx
mov r9d, 0x6e
lea r8, [0x1800a3c88]
lea rdx, [rsp + 0x40]
lea rcx, [rbp + 0x80]
call fcn.180030ad0
mov word [rsp + 0x40], bx
lea r9, [rsp + 0x40]
mov r8d, 0x128
lea rdx, [rbp + 0x50]
lea rcx, [0x1800a3ca8]
call fcn.18000b380
xor r11d, r11d
jmp 0x180049bed
mov r8d, 1
lea rdx, [0x180092c48]
lea rcx, [rbp + 0x210]
call fcn.180027360
xor r11d, r11d
jmp 0x180049bed
movsxd rcx, dword [rsi]
mov edx, 4
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_calloc]
mov rdx, rax
mov qword [rsp + 0x48], rax
test rax, rax
jne 0x18004a36f
mov ebx, 0x8e
cmp ebx, 0x8e
je 0x18004a09b
cmp ebx, 0xd50
je 0x18004a081
cmp ebx, 0x1a12
je case.0x180049c6e.11
jmp 0x18004a0df
mov rcx, r15
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
xor r11d, r11d
mov edi, r11d
mov qword [rbp - 0x78], r11
mov qword [rsp + 0x68], r11
jmp 0x18004a0e2
mov dword [rsp + 0x70], 1
mov dword [rbp - 0x80], 0xc
mov dword [rsp + 0x40], 0
lea rax, [rsp + 0x70]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x80]
lea r8, [0x180092c27]
lea rdx, [rsp + 0x40]
mov ecx, 0xe3
call fcn.18000a640
mov rcx, r12
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
xor r11d, r11d
add ebx, 0xcc2
cmp ebx, 0x2646
jbe 0x18004a063
jmp 0x180049be8
mov ecx, r11d
cmp dword [rsi], 0
jle case.0x180049af9.273
nop word [rax + rax]
movsxd rax, dword [rdx]
mov dword [r10 + rax*4], ecx
inc ecx
lea rdx, [rdx + 4]
cmp ecx, dword [rsi]
jl 0x18004a110
mov rdx, qword [rsp + 0x48]
jmp case.0x180049af9.273
cmp dword [rsi], 0
jle 0x18004a38e
mov r8, r12
mov r9, r14
sub r10, r12
nop dword [rax]
mov edx, 0x71
cmp edx, 0x71
jne 0x18004a160
mov rax, qword [r9]
imul r13d, dword [rax + 0x18]
movsxd rax, dword [r10 + r8]
mov rcx, qword [r14 + rax*8]
mov eax, dword [rcx + 0x18]
mov dword [r8], eax
add edx, 0x73
cmp edx, 0xe4
jb 0x18004a145
mov dword [rsp + 0x50], r13d
inc r11d
add r9, 8
add r8, 4
cmp r11d, dword [rsi]
jl 0x18004a140
xor r11d, r11d
jmp 0x180049bed
mov ecx, r11d
cmp dword [rsi], 0
jle case.0x180049af9.273
mov rax, rdx
nop word [rax + rax]
mov dword [rax], r11d
inc ecx
lea rax, [rax + 4]
cmp ecx, dword [rsi]
jl 0x18004a1a0
jmp case.0x180049af9.273
mov word [rbp + 0x270], bx
mov qword [rsp + 0x28], r11
mov qword [rsp + 0x20], r11
mov r9d, 0x59
xor r8d, r8d
xor edx, edx
lea rcx, [rbp + 0x230]
call fcn.1800325a0
xor r11d, r11d
jmp 0x180049bed
mov r13d, r11d
cmp dword [rsi], 0
jle 0x18004a384
mov r12, r14
mov rax, qword [r12]
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x20], r11
lea r9, [rsp + 0x60]
xor r8d, r8d
mov edx, 0x11a
xor ecx, ecx
call fcn.180063010
mov rbx, rax
xor r11d, r11d
mov r15d, r11d
cmp dword [rsi], r11d
jle 0x18004a274
mov rsi, qword [rsp + 0x48]
mov rdi, qword [rbp - 0x58]
nop word [rax + rax]
mov rax, qword [r14]
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x20], r11
lea r9, [rsp + 0x60]
xor r8d, r8d
mov edx, 0x11a
xor ecx, ecx
call fcn.180063010
cmp eax, ebx
jbe 0x18004a257
inc dword [rsi]
inc r15d
add r14, 8
add rsi, 4
cmp r15d, dword [rdi]
mov r11d, 0
jl 0x18004a230
mov r14, qword [rbp - 0x50]
mov rsi, rdi
inc r13d
add r12, 8
cmp r13d, dword [rsi]
jl 0x18004a1f1
mov rdi, qword [rbp - 0x78]
mov r15, qword [rbp - 0x70]
mov r12, qword [rbp - 0x60]
mov r13d, dword [rsp + 0x50]
jmp 0x180049be8
movups xmm6, xmmword [0x18009c020]
lea rax, [rbp + 0x280]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor edx, edx
mov r8d, 0xb6
lea rcx, [rbp + 0x1f0]
call fcn.18000f640
xor r11d, r11d
jmp 0x180049bed
mov r13d, 1
mov dword [rsp + 0x50], r13d
movsxd rcx, dword [rsi]
lea edx, [r13 + 3]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_calloc]
mov r12, rax
mov qword [rbp - 0x60], rax
test rax, rax
jne 0x180049cb5
mov ebx, 0x91
nop dword [rax]
mov ecx, ebx
sub ecx, 0x91
je 0x18004a318
cmp ecx, 0x60
je case.0x180049c6e.11
xor r11d, r11d
jmp 0x18004a35f
mov dword [rsp + 0x70], r13d
mov dword [rbp - 0x80], 0xc
mov dword [rsp + 0x40], 0
lea rax, [rsp + 0x70]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x80]
lea r8, [0x180092c27]
lea rdx, [rsp + 0x40]
mov ecx, 0xe3
call fcn.18000a640
xor r11d, r11d
mov edi, r11d
mov qword [rbp - 0x78], r11
mov qword [rsp + 0x68], r11
add ebx, 0x60
cmp ebx, 0x151
jb 0x18004a300
jmp 0x180049be8
xor r11d, r11d
jmp 0x180049bf2
mov rdx, qword [rsp + 0x48]
xor r11d, r11d
jmp 0x180049bf7
mov r13d, dword [rsp + 0x50]
jmp case.0x180049af9.273
xor r11d, r11d
jmp case.0x180049af9.273
mov r8d, dword [rsp + 0x70]
mov dword [rsp + 0x50], r8d
jmp 0x180049c23
lea r9, [rbp - 0x40]
mov r8d, 0x62
lea rdx, [rbp + 0xb0]
lea rcx, [0x1800a3c20]
call fcn.18003ebd0
xor r9d, r9d
xor r8d, r8d
mov edx, 0x94
lea rcx, [rbp + 0xb0]
call fcn.18002a1a0
jmp 0x18004a868
lea rax, [rbp + 0x80]
mov qword [rsp + 0x70], rax
mov rax, qword [rbp - 0x38]
cmp rax, qword [rbp - 0x30]
je 0x18004a408
lea rcx, [rbp + 0x80]
mov qword [rax], rcx
add qword [rbp - 0x38], 8
jmp case.0x180049c6e.12
lea r8, [rsp + 0x70]
mov rdx, qword [rbp - 0x38]
lea rcx, [rbp - 0x40]
call fcn.1800011c0
jmp 0x18004a868
movdqa xmmword [rsp + 0x70], xmm6
lea r8, [rbp + 0x10]
lea rdx, [rbp + 0x1e0]
lea rcx, [rsp + 0x70]
call qword [sym.imp.SHLWAPI.dll_AssocCreate]
test eax, eax
jne 0x18004a868
mov rcx, qword [rbp + 0x10]
mov rax, qword [rcx]
call qword [rax + 0x10]
jmp 0x18004a868
mov rdi, rsi
mov qword [rbp - 0x78], rsi
mov qword [rsp + 0x68], rsi
jmp case.0x180049c6e.12
mov rax, qword [rbp - 0x58]
mov eax, dword [rax]
mov dword [rsp + 0x70], eax
mov dword [rsp + 0x20], 0x57
lea r9, [rsp + 0x70]
xor r8d, r8d
mov rdx, r12
xor ecx, ecx
call fcn.180056f60
mov qword [rbp - 0x70], rax
cmp rax, 0
jne 0x18004a540
mov esi, 0xe2
mov r14, qword [rsp + 0x38]
nop
mov ecx, esi
sub ecx, 0xe2
je 0x18004a51d
sub ecx, 1
je 0x18004a518
sub ecx, 1
je 0x18004a508
sub ecx, 1
je 0x18004a4c4
cmp ecx, 1
je case.0x180049c6e.11
jmp 0x18004a526
mov dword [rsp + 0x70], 1
mov dword [rbp - 0x80], 0xe
xor edi, edi
mov dword [rsp + 0x58], edi
lea rax, [rsp + 0x70]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x80]
lea r8, [0x180092c27]
lea rdx, [rsp + 0x58]
mov ecx, 0xe3
call fcn.18000a640
mov qword [rbp - 0x78], rdi
mov qword [rsp + 0x68], rdi
jmp 0x18004a526
mov rcx, qword [rsp + 0x48]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rcx, r14
jmp 0x18004a520
mov rcx, r15
jmp 0x18004a520
mov rcx, r12
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
inc esi
cmp esi, 0xe7
jb 0x18004a4a0
mov rsi, qword [rbp - 0x70]
mov r10, r14
jmp 0x18004a86d
mov rsi, rax
jmp 0x18004a868
mov dword [rsp + 0x68], r11d
mov rdi, qword [rsp + 0x68]
mov qword [rbp - 0x78], rdi
jmp case.0x180049c6e.12
cmp qword [rsp + 0x60], 0
jne case.0x180049c6e.12
mov edi, 0xc4
nop dword [rax]
cmp edi, 0x7e54
ja 0x18004a5cb
je 0x18004a622
cmp edi, 0xc4
je 0x18004a5c2
cmp edi, 0x2028
je 0x18004a5bc
cmp edi, 0x3f8c
je 0x18004a5b3
cmp edi, 0x5ef0
jne 0x18004a622
mov dword [rbp - 0x60], 0x104
mov dword [rsp + 0x40], 0x104
jmp 0x18004a622
mov dword [rbp - 0x50], 3
jmp 0x18004a622
mov qword [rbp + 0x30], r11
jmp 0x18004a622
mov qword [rbp + 0x2c0], r11
jmp 0x18004a622
cmp edi, 0x9db8
je 0x18004a60b
cmp edi, 0xbd1c
je 0x18004a5e9
cmp edi, 0xdc80
je 0x180049f2c
jmp 0x18004a622
mov r9d, dword [rsp + 0x40]
lea r8, [rbp + 0x2f0]
mov edx, dword [rbp - 0x50]
mov rcx, qword [rbp + 0x30]
call sub.IMM32.dll_ImmGetGuideLineA
mov dword [rsp + 0x68], 1
jmp 0x18004a622
mov r8d, dword [rbp - 0x60]
lea rdx, [rbp + 0x400]
mov rcx, qword [rbp + 0x2c0]
call sub.IMM32.dll_ImmGetIMEFileNameA
add edi, 0x1f64
cmp edi, 0xfb20
mov r11d, 0
jbe 0x18004a570
mov rdi, qword [rsp + 0x68]
mov qword [rbp - 0x78], rdi
jmp 0x18004a868
mov qword [rsp + 0x70], r9
xor r9d, r9d
xor edx, edx
lea r8d, [r9 + 0x77]
lea rcx, [rsp + 0x70]
call fcn.180007b90
jmp 0x18004a868
mov rcx, rdx
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
jmp 0x18004a868
mov qword [rsp + 0x28], r11
mov dword [rsp + 0x20], r11d
lea r9, [rbp + 0x40]
lea r8, [0x1800188a0]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateThread]
mov qword [rsp + 0x60], rax
movups xmm0, xmmword [0x18009c010]
movups xmmword [rbp + 0x1e0], xmm0
jmp 0x18004a868
mov rcx, qword [rsp + 0x60]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x18004a868
mov eax, dword [0x1800a3cd0]
mov dword [rsp + 0x70], eax
mov r8d, 0x30
lea rdx, [rsp + 0x70]
lea rcx, [rbp - 0x40]
call fcn.18005d550
lea rax, [rbp - 0x40]
mov qword [rbp + 0x20], rax
mov eax, dword [0x1800a3cd0]
mov dword [rbp + 0x28], eax
mov eax, dword [0x1800a3cd4]
mov dword [rbp + 0x2c], eax
movaps xmm0, xmmword [rbp + 0x20]
movdqa xmmword [rbp + 0x40], xmm0
jmp 0x18004a868
lea rax, [rbp + 0x50]
mov qword [rsp + 0x70], rax
mov rax, qword [rbp - 0x38]
cmp rax, qword [rbp - 0x30]
je 0x18004a408
lea rcx, [rbp + 0x50]
mov qword [rax], rcx
add qword [rbp - 0x38], 8
jmp case.0x180049c6e.12
mov rcx, r12
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rcx, r15
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
jmp 0x18004a868
mov rcx, r10
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
jmp 0x18004a868
lea r9, [rbp - 0x40]
xor r8d, r8d
mov edx, 0x119
xor ecx, ecx
call fcn.180028ac0
jmp 0x18004a868
mov r9, qword [rbp - 0x48]
test r9, r9
je 0x18004a86d
mov r14d, r11d
test r8d, r8d
jle 0x18004a86d
mov r13, r11
mov rdi, qword [rbp - 0x70]
nop word [rax + rax]
mov esi, 0x31
mov eax, esi
sub eax, 0x2f
je 0x18004a82f
sub eax, 1
je 0x18004a7da
cmp eax, 1
jne 0x18004a83e
mov dword [rsp + 0x70], r14d
mov qword [rbp - 0x80], rdi
lea r9, [rsp + 0x70]
lea r8, [rbp - 0x80]
mov rdx, r15
mov ecx, 0x133
call fcn.18004fc30
xor ebx, ebx
mov rdx, qword [rsp + 0x48]
mov r9, qword [rbp - 0x48]
jmp 0x18004a83e
mov r8d, 1
mov rax, qword [rbp - 0x58]
movsxd r10, dword [rax]
test r10, r10
jle 0x18004a83e
mov r9, rdx
nop
mov edx, 0x21
cmp edx, 0x21
jne 0x18004a80c
movsxd rcx, dword [r9]
mov eax, dword [r15 + rcx*4]
imul eax, r8d
add ebx, eax
imul r8d, dword [r12 + rcx*4]
add edx, 0x1377
cmp edx, 0x1377
jbe 0x18004a7f5
add r9, 4
sub r10, 1
jne 0x18004a7f0
mov rdx, qword [rsp + 0x48]
mov r9, qword [rbp - 0x48]
jmp 0x18004a83e
movsxd rax, ebx
mov rcx, qword [rdi + 0x20]
mov rax, qword [r9 + rax*8]
mov qword [rcx + r13], rax
dec esi
cmp esi, 0x2e
ja 0x18004a795
inc r14d
add r13, 8
cmp r14d, dword [rsp + 0x50]
jl 0x18004a790
mov rdi, qword [rbp - 0x78]
mov rsi, qword [rbp - 0x70]
mov r13d, dword [rsp + 0x58]
mov r10, qword [rsp + 0x38]
lea r9, [0x18000a1b0]
mov eax, dword [rsp + 0x30]
mov edx, dword [rbp - 0x68]
inc edx
mov dword [rbp - 0x68], edx
inc r13d
mov dword [rsp + 0x58], r13d
cmp edx, eax
jae case.0x180049c6e.11
mov rdx, qword [rsp + 0x48]
mov r8d, dword [rsp + 0x50]
xor r11d, r11d
jmp 0x180049c52
xor r14d, r14d
mov rdx, qword [rbp + 0xf8]
test rdx, rdx
je 0x18004a8dd
mov r8, qword [rbp + 0x108]
sub r8, rdx
sar r8, 4
lea rcx, [rbp + 0xf8]
call fcn.18002bcb0
mov qword [rbp + 0xf8], r14
xorps xmm0, xmm0
movdqa xmmword [rbp + 0x100], xmm0
lea rcx, [rbp + 0xb8]
call fcn.1800030b0
nop
mov rbx, qword [rbp - 0x28]
test rbx, rbx
je 0x18004a97b
mov rsi, qword [rbp - 0x20]
cmp rbx, rsi
je 0x18004a915
mov rcx, rbx
call fcn.180002970
add rbx, 0x28
cmp rbx, rsi
jne 0x18004a900
mov rbx, qword [rbp - 0x28]
mov rcx, qword [rbp - 0x18]
sub rcx, rbx
movabs rax, 0x6666666666666667
imul rcx
sar rdx, 4
mov rax, rdx
shr rax, 0x3f
add rdx, rax
lea rdx, [rdx + rdx*4]
shl rdx, 3
mov rax, rbx
cmp rdx, 0x1000
jb 0x18004a967
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x18004a967
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rcx, rbx
call fcn.18008eb9c
mov qword [rbp - 0x28], r14
xorps xmm0, xmm0
movdqa xmmword [rbp - 0x20], xmm0
mov rdx, qword [rbp - 0x40]
test rdx, rdx
je 0x18004a9a4
mov r8, qword [rbp - 0x30]
sub r8, rdx
sar r8, 3
lea rcx, [rbp - 0x40]
call fcn.18002bc60
xorps xmm0, xmm0
movdqa xmmword [rbp - 0x40], xmm0
mov qword [rbp - 0x30], r14
mov rdx, qword [rbp + 0x72]
cmp rdx, 0x10
jb 0x18004a9e2
inc rdx
mov rcx, qword [rbp + 0x5a]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18004a9dd
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x18004a9dd
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.18008eb9c
movdqa xmm0, xmmword [0x18009bfb0]
movdqu xmmword [rbp + 0x6a], xmm0
mov byte [rbp + 0x5a], 0
mov rdx, qword [rbp + 0xa2]
cmp rdx, 0x10
jb 0x18004aa37
inc rdx
mov rcx, qword [rbp + 0x8a]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18004aa32
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x18004aa32
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.18008eb9c
movdqa xmm0, xmmword [0x18009bfb0]
movdqu xmmword [rbp + 0x9a], xmm0
mov byte [rbp + 0x8a], 0
lea rcx, [rbp + 0x280]
call fcn.180002cd0
nop
lea rcx, [rbp + 0x1f0]
call fcn.180002d80
mov rax, rdi
mov rcx, qword [rbp + 0x510]
xor rcx, rsp
call fcn.18008f350
mov rbx, qword [rsp + 0x680]
movaps xmm6, xmmword [rsp + 0x620]
add rsp, 0x630
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret