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

Disassembly:
push rbx
push rsi
push rdi
push r13
sub rsp, 0x88
mov r13, qword [rcx + 0x10]
xor edi, edi
mov esi, 1
mov r8d, 9
movzx edx, r8w
mov ebx, edi
cmp word [rcx + 0xe], si
je 0x180025966
mov edx, esi
mov word [0x1800cc9e8], r8w
jmp 0x1800259b4
mov ecx, dword [0x1800c6530]
sub ecx, 6
je 0x180025998
cmp ecx, esi
je 0x180025986
mov eax, 0xb
movzx edx, si
mov word [0x1800cc9e8], ax
jmp 0x1800259b4
cmp dword [0x1800cca00], 3
jne 0x180025975
lea rbx, [0x1800cc9f0]
jmp 0x1800259b4
cmp dword [0x1800cca00], ebx
jne 0x1800259b4
cmp dword [0x1800cc9f0], ebx
lea rax, [0x1800cc9f0]
cmove rax, rbx
mov rbx, rax
xor eax, eax
xorps xmm0, xmm0
movups xmmword [r13], xmm0
movups xmmword [r13 + 0x10], xmm0
mov qword [r13 + 0x20], rax
mov word [r13 + 0x28], ax
test rbx, rbx
je 0x180025c8a
cmp dword [rbx], eax
je 0x1800259e6
movzx eax, word [rbx + 4]
test ax, ax
jne 0x180025c73
cmp dword [rbx + 8], edi
jle 0x180025c6e
lea rdx, [rbx + 0x138]
mov r8d, 0xffffffff
mov rcx, rbx
call fcn.18002d3f0
movzx eax, word [rbx + 0x104]
mov word [r13], ax
mov eax, dword [rbx + 0x120]
test eax, eax
je 0x180025a26
cmp dword [rbx + 0xf8], 0x2000237
jae 0x180025a2c
mov eax, dword [rbx + 0x104]
mov word [r13 + 4], ax
mov word [r13 + 2], di
mov word [r13 + 6], di
mov eax, dword [rbx + 0xfc]
mov dword [r13 + 8], eax
mov eax, dword [rbx + 0x100]
mov dword [r13 + 0xc], eax
mov ecx, dword [rbx + 0x10c]
sub ecx, esi
je 0x180025b08
sub ecx, esi
je 0x180025ad4
cmp ecx, esi
jne 0x180025b28
mov word [r13 + 0x10], 3
mov eax, 0x55555556
imul dword [rbx + 0x108]
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 0x55555556
mov word [r13 + 0x12], dx
imul dword [rbx + 0x108]
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 0x55555556
mov word [r13 + 0x14], dx
imul dword [rbx + 0x108]
mov eax, edx
shr eax, 0x1f
add edx, eax
mov word [r13 + 0x16], dx
mov qword [r13 + 0x18], rdi
mov word [r13 + 0x20], di
movzx eax, word [rbx + 0x108]
mov word [r13 + 0x22], ax
mov dword [r13 + 0x24], 0x20000
jmp 0x180025b1c
mov word [r13 + 0x10], si
movzx eax, word [rbx + 0x108]
mov word [r13 + 0x12], ax
mov qword [r13 + 0x14], rdi
mov dword [r13 + 0x1c], edi
mov word [r13 + 0x20], di
movzx eax, word [rbx + 0x108]
mov word [r13 + 0x22], ax
mov dword [r13 + 0x24], 0x10000
jmp 0x180025b1c
mov qword [r13 + 0x10], 0x10001
mov qword [r13 + 0x18], rdi
mov qword [r13 + 0x20], 0x10000
movzx eax, word [rbx + 0x170]
mov word [r13 + 0x28], ax
mov rcx, qword [0x1800cc980]
call fcn.180006a80
test al, 0x20
je 0x180025c5e
movzx eax, word [r13 + 6]
movsx ecx, word [r13 + 4]
movzx edx, word [r13 + 2]
movsx r8d, word [r13]
mov r9d, dword [rbx + 8]
mov dword [rsp + 0x48], eax
mov eax, dword [r13 + 0xc]
mov dword [rsp + 0x40], ecx
mov rcx, qword [0x1800cc980]
mov dword [rsp + 0x38], edx
mov edx, 0x20
mov dword [rsp + 0x30], r8d
lea r8, [0x1800abd68]
mov qword [rsp + 0xb0], rbp
mov dword [rsp + 0x28], eax
mov eax, dword [r13 + 8]
mov qword [rsp + 0xb8], r12
mov qword [rsp + 0xc0], r14
mov dword [rsp + 0x20], eax
mov qword [rsp + 0x80], r15
call fcn.1800073b0
movsx ecx, word [r13 + 0x26]
mov edx, 0x20
movzx r8d, word [r13 + 0x24]
movzx eax, word [r13 + 0x28]
movsx r10d, word [r13 + 0x22]
movsx r11d, word [r13 + 0x20]
movsx ebx, word [r13 + 0x1e]
movsx edi, word [r13 + 0x1c]
movsx esi, word [r13 + 0x1a]
movsx ebp, word [r13 + 0x18]
movsx r14d, word [r13 + 0x16]
movsx r15d, word [r13 + 0x14]
movsx r12d, word [r13 + 0x12]
movsx r9d, word [r13 + 0x10]
mov dword [rsp + 0x78], eax
mov dword [rsp + 0x70], ecx
mov rcx, qword [0x1800cc980]
mov dword [rsp + 0x68], r8d
lea r8, [0x1800abda0]
mov dword [rsp + 0x60], r10d
mov dword [rsp + 0x58], r11d
mov dword [rsp + 0x50], ebx
mov dword [rsp + 0x48], edi
mov dword [rsp + 0x40], esi
mov dword [rsp + 0x38], ebp
mov dword [rsp + 0x30], r14d
mov dword [rsp + 0x28], r15d
mov dword [rsp + 0x20], r12d
call fcn.1800073b0
mov r15, qword [rsp + 0x80]
xor edi, edi
mov r14, qword [rsp + 0xc0]
mov r12, qword [rsp + 0xb8]
mov rbp, qword [rsp + 0xb0]
movzx eax, di
add rsp, 0x88
pop r13
pop rdi
pop rsi
pop rbx
ret
mov eax, 0x8002
mov word [0x1800cc9e8], ax
movzx eax, si
add rsp, 0x88
pop r13
pop rdi
pop rsi
pop rbx
ret
cmp dword [0x1800cca00], 0xffffffff
jne 0x180025ccc
mov dword [r13 + 8], 0x64
mov dword [r13 + 0xc], 0x64
mov dword [r13], 0x10001
mov dword [r13 + 4], 0x10001
mov dword [r13 + 0x10], 0x10001
mov qword [r13 + 0x22], rsi
add rsp, 0x88
pop r13
pop rdi
pop rsi
pop rbx
ret
movzx eax, dx
add rsp, 0x88
pop r13
pop rdi
pop rsi
pop rbx
ret
mov qword [rsp + 0x10], rbx
push rdi
sub rsp, 0x40
mov rax, qword [0x1800c6d00]
xor rax, rsp
mov qword [rsp + 0x30], rax
movzx edx, word [rcx + 0xe]
xor edi, edi
mov rbx, qword [rcx + 0x10]
sub edx, 1
je 0x180025dfe
sub edx, 1
je 0x180025dfe
sub edx, 1
je 0x180025dd4
sub edx, 3
je 0x180025db2
cmp edx, 1
je 0x180025d42
mov eax, 9
mov edi, 1
mov word [0x1800cc9e8], ax
jmp 0x180025fce
cmp dword [0x1800c6530], 4
jne 0x180025e1b
mov dword [0x1800cd14c], edi
mov eax, 1
mov dword [0x1800cd150], eax
mov dword [0x1800cd154], eax
test rbx, rbx
je 0x180025d9e
mov rcx, rbx
call fcn.18002b770
mov eax, dword [0x1800cd14c]
mov rcx, rbx
mov dword [rbx + 0x10], eax
mov eax, dword [0x1800cd150]
mov dword [rbx + 0x14], eax
mov eax, dword [0x1800cd154]
mov dword [rbx + 0x18], eax
call fcn.1800304d0
movzx edi, ax
jmp 0x180025faf
movzx edi, ax
mov eax, 9
mov word [0x1800cc9e8], ax
jmp 0x180025fce
cmp dword [0x1800c6530], 4
jne 0x180025e1b
test rbx, rbx
je 0x180025d2c
mov rcx, rbx
call fcn.1800304d0
movzx edi, ax
jmp 0x180025fce
cmp dword [0x1800c6530], 4
jne 0x180025e1b
test rbx, rbx
je 0x180025d2c
mov rcx, rbx
call fcn.18002b770
mov eax, 1
mov dword [rbx + 0x10], edi
mov dword [rbx + 0x14], eax
jmp 0x180025fac
mov ecx, dword [0x1800c6530]
sub ecx, 4
je 0x180025ef6
sub ecx, 1
je 0x180025ef6
cmp ecx, 1
je 0x180025e31
mov eax, 0xb
mov edi, 1
mov word [0x1800cc9e8], ax
jmp 0x180025fce
lea rcx, [rsp + 0x20]
call qword [0x1800c5880]
mov ecx, dword [rsp + 0x24]
mov eax, 0x2040811
mov r8d, dword [rsp + 0x28]
shl ecx, 0xf
mul ecx
shl r8d, 0xf
sub ecx, edx
shr ecx, 1
add ecx, edx
shr ecx, 6
movzx eax, cx
shr ecx, 0x10
shl eax, 0x10
or eax, ecx
mov ecx, dword [rsp + 0x20]
shl ecx, 0xf
mov dword [rbx + 4], eax
mov eax, 0x2040811
mul ecx
sub ecx, edx
shr ecx, 1
add ecx, edx
shr ecx, 6
movzx eax, cx
shr ecx, 0x10
shl eax, 0x10
or eax, ecx
mov dword [rbx], eax
mov eax, 0x2040811
mul r8d
mov eax, 0x2040811
sub r8d, edx
shr r8d, 1
add r8d, edx
shr r8d, 6
movzx ecx, r8w
shl ecx, 0x10
shr r8d, 0x10
or ecx, r8d
mov dword [rbx + 8], ecx
mov ecx, dword [rsp + 0x2c]
shl ecx, 0xf
mul ecx
sub ecx, edx
shr ecx, 1
add ecx, edx
shr ecx, 6
movzx eax, cx
shl eax, 0x10
shr ecx, 0x10
or eax, ecx
mov dword [rbx + 0xc], eax
mov eax, dword [0x1800ccb70]
mov dword [rbx + 0x10], eax
mov eax, dword [0x1800ccb74]
mov dword [rbx + 0x14], eax
mov eax, dword [0x1800ccb78]
jmp 0x180025fac
lea rcx, [rsp + 0x20]
call qword [0x1800c5880]
mov ecx, dword [rsp + 0x24]
mov eax, 0x2040811
shl ecx, 0xf
mul ecx
sub ecx, edx
shr ecx, 1
add ecx, edx
shr ecx, 6
movzx eax, cx
shr ecx, 0x10
shl eax, 0x10
or eax, ecx
mov ecx, dword [rsp + 0x20]
shl ecx, 0xf
mov dword [rbx + 4], eax
mov eax, 0x2040811
mul ecx
sub ecx, edx
shr ecx, 1
add ecx, edx
shr ecx, 6
movzx eax, cx
shr ecx, 0x10
shl eax, 0x10
or eax, ecx
mov ecx, dword [rsp + 0x28]
shl ecx, 0xf
mov dword [rbx], eax
mov eax, 0x2040811
mul ecx
sub ecx, edx
shr ecx, 1
add ecx, edx
shr ecx, 6
movzx eax, cx
shl eax, 0x10
shr ecx, 0x10
or eax, ecx
mov ecx, dword [rsp + 0x2c]
mov dword [rbx + 8], eax
mov eax, 0x2040811
shl ecx, 0xf
mul ecx
sub ecx, edx
shr ecx, 1
add ecx, edx
shr ecx, 6
movzx eax, cx
shl eax, 0x10
shr ecx, 0x10
or eax, ecx
mov dword [rbx + 0xc], eax
mov eax, dword [0x1800cd14c]
mov dword [rbx + 0x10], eax
mov eax, dword [0x1800cd150]
mov dword [rbx + 0x14], eax
mov eax, dword [0x1800cd154]
mov dword [rbx + 0x18], eax
mov rcx, qword [0x1800cc980]
call fcn.180006a80
test al, 0x20
je 0x180025fce
mov r8, rbx
mov dl, 0xab
mov ecx, 0x20
call fcn.18002d920
movzx eax, di
mov rcx, qword [rsp + 0x30]
xor rcx, rsp
call fcn.180032180
mov rbx, qword [rsp + 0x58]
add rsp, 0x40
pop rdi
ret
mov qword [rsp + 0x10], rbx
push rdi
sub rsp, 0x40
movzx eax, word [rcx + 0xc]
mov r8, rcx
cmp eax, 0x401
ja case.0x18002724b.262
je 0x180027391
add eax, 0xfffffeff
cmp eax, 0xa
ja case.0x18002724b.262
lea rdx, [0x180000000]
cdqe
mov ecx, dword [rdx + rax*4 + 0x27544]
add rcx, rdx
jmp rcx
mov rcx, r8
mov rbx, qword [rsp + 0x58]
add rsp, 0x40
pop rdi
jmp 0x180025930
mov rcx, r8
mov rbx, qword [rsp + 0x58]
add rsp, 0x40
pop rdi
jmp 0x180025ce0
cmp word [r8 + 0xe], 1
jne case.0x18002724b.262
cmp dword [0x1800c6530], 6
jge 0x1800272c1
mov eax, 0xb
jmp 0x180027296
cmp word [r8 + 0xe], 1
je 0x180027279
mov eax, 9
mov ebx, 1
mov word [0x1800cc9e8], ax
movzx eax, bx
mov rbx, qword [rsp + 0x58]
add rsp, 0x40
pop rdi
ret
cmp word [r8 + 0xe], 1
jne case.0x18002724b.262
cmp dword [0x1800c6530], 6
jne 0x180027282
mov rcx, r8
mov rbx, qword [rsp + 0x58]
add rsp, 0x40
pop rdi
jmp 0x18002bf30
cmp word [r8 + 0xe], 1
je 0x1800272e2
mov eax, 0xe
jmp 0x180027296
cmp dword [0x1800c6530], 7
jne 0x180027282
mov rcx, qword [r8 + 0x10]
lea rdx, [0x1800cc9f0]
mov rbx, qword [rsp + 0x58]
add rsp, 0x40
pop rdi
jmp 0x18002b9c0
mov rcx, qword [r8 + 0x10]
xor edi, edi
cmp word [r8 + 0xe], 1
je 0x180027335
mov eax, 9
mov edi, 1
movzx ebx, di
mov word [0x1800cc9e8], ax
movzx eax, bx
mov rbx, qword [rsp + 0x58]
add rsp, 0x40
pop rdi
ret
mov eax, dword [0x1800c6530]
add eax, 0xfffffffc
cmp eax, 2
ja 0x18002736f
movzx ebx, di
mov dword [rcx], 2
movzx eax, bx
mov dword [rcx + 5], 0x1000000
mov byte [rcx + 4], dil
mov word [rcx + 9], 0xffff
mov byte [rcx + 0xb], 0xff
mov rbx, qword [rsp + 0x58]
add rsp, 0x40
pop rdi
ret
mov eax, 0xb
mov edi, 1
movzx ebx, di
mov word [0x1800cc9e8], ax
movzx eax, bx
mov rbx, qword [rsp + 0x58]
add rsp, 0x40
pop rdi
ret
xor edi, edi
mov qword [rsp + 0x50], rsi
cmp word [rcx + 0xe], 1
mov rsi, qword [rcx + 0x10]
je 0x1800273ad
mov eax, 9
jmp 0x180027520
mov eax, dword [0x1800c6530]
add eax, 0xfffffffa
cmp eax, 1
ja 0x18002751b
cmp qword [0x1800ccd88], rdi
mov ebx, 1
jne 0x1800274c0
mov eax, dword [0x1800cc9f8]
lea r9, [rsp + 0x20]
mov dword [rsp + 0x24], eax
xor edx, edx
mov rax, qword [case.0x180030475.0]
mov ecx, 0x6280
mov r8d, 0xffffffff
mov qword [rsp + 0x2c], rdi
mov dword [rsp + 0x34], edi
mov dword [rsp + 0x20], 0x18
mov dword [rsp + 0x28], edi
call rax
test ax, ax
jne 0x1800274c0
movsxd rax, dword [rsp + 0x34]
xor ecx, ecx
mov rdx, rax
mov dword [0x1800ccd98], eax
call qword [sym.imp.KERNEL32.dll_GlobalAlloc]
mov qword [0x1800ccd88], rax
test rax, rax
je 0x1800274c0
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GlobalLock]
mov qword [0x1800ccd90], rax
test rax, rax
je 0x1800274fc
mov edx, dword [0x1800cc9f8]
lea r9, [rsp + 0x20]
mov dword [rsp + 0x24], edx
mov ecx, 0x6280
mov edx, dword [0x1800ccd98]
mov r8d, 0xffffffff
mov dword [rsp + 0x34], edx
xor edx, edx
mov qword [rsp + 0x2c], rax
mov rax, qword [case.0x180030475.0]
mov dword [rsp + 0x20], 0x18
mov dword [rsp + 0x28], ebx
call rax
test ax, ax
je 0x1800274c0
mov rcx, qword [0x1800ccd88]
call qword [sym.imp.KERNEL32.dll_GlobalUnlock]
mov rcx, qword [0x1800ccd88]
mov qword [0x1800ccd90], rdi
call qword [sym.imp.KERNEL32.dll_GlobalFree]
mov qword [0x1800ccd88], rax
mov rax, qword [0x1800ccd90]
test rax, rax
je 0x1800274fc
mov dword [rsi], 0xc
movzx ebx, di
mov eax, dword [0x1800ccd98]
mov dword [rsi + 4], eax
mov rax, qword [0x1800ccd90]
mov qword [rsi + 8], rax
movzx eax, bx
mov rsi, qword [rsp + 0x50]
mov rbx, qword [rsp + 0x58]
add rsp, 0x40
pop rdi
ret
mov rsi, qword [rsp + 0x50]
mov eax, 5
mov word [0x1800cc9e8], ax
movzx eax, bx
mov rbx, qword [rsp + 0x58]
add rsp, 0x40
pop rdi
ret
mov eax, 0xb
mov rsi, qword [rsp + 0x50]
mov edi, 1
movzx ebx, di
mov word [0x1800cc9e8], ax
movzx eax, bx
mov rbx, qword [rsp + 0x58]
add rsp, 0x40
pop rdi
ret
push rbx
push rbp
push rsi
push rdi
push r12
push r14
push r15
sub rsp, 0x190
mov rax, qword [0x1800c6d00]
xor rax, rsp
mov qword [rsp + 0x180], rax
xor eax, eax
xor r12d, r12d
xorps xmm0, xmm0
mov r15, rdx
mov rdi, rcx
mov qword [rsp + 0x40], rax
mov ebx, r12d
mov dword [rsp + 0x48], eax
movups xmmword [rsp + 0x30], xmm0
cmp dword [rcx], eax
jbe 0x18002bab0
mov ebp, 0x8000
lea rsi, [0x1800c6920]
nop word [rax + rax]
mov eax, ebx
add rax, rax
movzx r11d, word [rdi + rax*8 + 8]
mov dword [rdi + rax*8 + 8], 0x80000
cmp dword [0x1800cc9f0], r12d
je 0x18002baa6
lea r10, [rdi + rax*8]
movzx eax, word [rdi + rax*8 + 4]
mov edx, eax
cmp ax, bp
jb 0x18002ba57
mov eax, dword [0x1800cab54]
shl eax, 0x10
or edx, eax
mov eax, r12d
mov rcx, rsi
nop dword [rax]
cmp dword [rcx], edx
je 0x18002ba71
inc eax
add rcx, 0x18
cmp eax, 0x26
jb 0x18002ba60
jmp 0x18002baa6
movsxd rcx, eax
lea rax, [rcx + rcx*2]
lea r8, [rsi + rax*8]
test r8, r8
je 0x18002baa6
cmp dword [r8 + 0x10], r12d
je 0x18002baa6
mov rax, qword [r8 + 8]
test rax, rax
je 0x18002baa6
lea rcx, [rsp + 0x30]
mov r9, r15
mov qword [rsp + 0x20], rcx
mov edx, r11d
lea rcx, [r10 + 4]
call rax
inc ebx
cmp ebx, dword [rdi]
jb 0x18002ba20
cmp dword [0x1800cc9f0], r12d
je case.default.0x18002be8f
mov eax, dword [rsp + 0x30]
lea rsi, [0x180000000]
mov ebp, 1
test eax, eax
jle 0x18002be0d
cmp eax, ebp
mov qword [rsp + 0x1e0], r13
mov esi, 0xffffffff
mov r14d, r12d
cmovg esi, eax
mov edx, ebp
mov r13d, 0x1202
mov rax, qword [0x1800c59d8]
lea rcx, [rsp + 0x50]
mov qword [rsp + 0x28], rcx
lea r8, [rsp + 0x80]
mov ecx, dword [r15 + 8]
mov r9d, 0xff
mov ebx, r12d
mov dword [rsp + 0x20], r12d
call rax
mov ecx, eax
test eax, eax
je 0x18002bb3d
sub ecx, 3
je 0x18002bb36
cmp ecx, ebp
jne 0x18002bdac
mov ebx, ebp
jmp 0x18002bb42
mov ebx, 0x32
jmp 0x18002bb42
mov ebx, 0x64
mov r8d, dword [rdi]
mov r10, r12
mov ecx, r12d
test r8d, r8d
je 0x18002bb8b
mov r9d, dword [rsp + 0x30]
nop word [rax + rax]
mov eax, ecx
add rax, rax
cmp word [rdi + rax*8 + 4], r13w
lea rdx, [rdi + rax*8]
jne 0x18002bb7e
cmp r9d, ebp
jbe 0x18002bb87
cmp word [rdi + rax*8 + 8], r12w
je 0x18002bb87
inc ecx
cmp ecx, r8d
jb 0x18002bb60
jmp 0x18002bb8b
lea r10, [rdx + 4]
mov r9d, ebp
lea rdx, [rsp + 0x80]
mov r8d, 0xc
mov rcx, r10
call fcn.180029a00
mov r9d, dword [rsp + 0x3c]
test r9d, r9d
je 0x18002bc27
mov r8d, dword [rdi]
mov r10, r12
mov ecx, r12d
test r8d, r8d
je 0x18002bbfb
mov r11d, 0x121c
nop dword [rax]
nop word [rax + rax]
mov eax, ecx
add rax, rax
cmp word [rdi + rax*8 + 4], r11w
lea rdx, [rdi + rax*8]
jne 0x18002bbee
cmp r9d, ebp
jbe 0x18002bbf7
cmp word [rdi + rax*8 + 8], r12w
je 0x18002bbf7
inc ecx
cmp ecx, r8d
jb 0x18002bbd0
jmp 0x18002bbfb
lea r10, [rdx + 4]
lea rax, [rsp + 0x80]
mov rdx, 0xffffffffffffffff
nop word [rax + rax]
inc rdx
cmp byte [rax + rdx], r12b
jne 0x18002bc10
mov r8d, 5
mov rcx, r10
call fcn.1800298b0
mov r9d, dword [rsp + 0x40]
test r9d, r9d
je 0x18002bc8b
mov r8d, dword [rdi]
mov r10, r12
mov ecx, r12d
test r8d, r8d
je 0x18002bc7b
mov r11d, 0x121a
nop word [rax + rax]
mov eax, ecx
add rax, rax
cmp word [rdi + rax*8 + 4], r11w
lea rdx, [rdi + rax*8]
jne 0x18002bc6e
cmp r9d, ebp
jbe 0x18002bc77
cmp word [rdi + rax*8 + 8], r12w
je 0x18002bc77
inc ecx
cmp ecx, r8d
jb 0x18002bc50
jmp 0x18002bc7b
lea r10, [rdx + 4]
mov r8d, 5
mov edx, ebx
mov rcx, r10
call fcn.1800298b0
cmp dword [rsp + 0x34], r12d
je 0x18002bcfb
movsx ecx, word [rsp + 0x52]
call fcn.180021530
mov r11d, eax
test eax, eax
js 0x18002bcfb
mov r8d, dword [rdi]
mov r10, r12
mov ecx, r12d
test r8d, r8d
je 0x18002bcea
mov r9d, dword [rsp + 0x34]
mov ebx, 0x1203
nop dword [rax + rax]
mov eax, ecx
add rax, rax
cmp word [rdi + rax*8 + 4], bx
lea rdx, [rdi + rax*8]
jne 0x18002bcdd
cmp r9d, ebp
jbe 0x18002bce6
cmp word [rdi + rax*8 + 8], r12w
je 0x18002bce6
inc ecx
cmp ecx, r8d
jb 0x18002bcc0
jmp 0x18002bcea
lea r10, [rdx + 4]
mov r8d, 5
mov edx, r11d
mov rcx, r10
call fcn.1800298b0
mov r9d, dword [rsp + 0x38]
test r9d, r9d
je 0x18002bd9b
movsx rax, word [rsp + 0x56]
mov r11d, 4
cmp eax, 7
ja case.default.0x18002bd2b
lea rdx, [0x180000000]
mov ecx, dword [rdx + rax*4 + 0x2bee8]
add rcx, rdx
jmp rcx
mov r11d, r12d
jmp case.default.0x18002bd2b
mov r11d, ebp
jmp case.default.0x18002bd2b
mov r11d, 2
jmp case.default.0x18002bd2b
mov r11d, 3
mov r8d, dword [rdi]
mov r10, r12
mov ecx, r12d
test r8d, r8d
je 0x18002bd8a
mov ebx, 0x121b
nop dword [rax + rax]
mov eax, ecx
add rax, rax
cmp word [rdi + rax*8 + 4], bx
lea rdx, [rdi + rax*8]
jne 0x18002bd7d
cmp r9d, ebp
jbe 0x18002bd86
cmp word [rdi + rax*8 + 8], r12w
je 0x18002bd86
inc ecx
cmp ecx, r8d
jb 0x18002bd60
jmp 0x18002bd8a
lea r10, [rdx + 4]
mov r8d, 5
mov edx, r11d
mov rcx, r10
call fcn.1800298b0
test esi, esi
jle 0x18002bda1
dec esi
test esi, esi
mov ebx, r12d
setne bl
inc r14d
mov edx, r12d
test ebx, ebx
jne 0x18002baf2
mov edx, dword [rdi]
mov r9, r12
mov r13, qword [rsp + 0x1e0]
mov eax, r12d
test edx, edx
je 0x18002bdf5
lea rcx, [rdi + 4]
mov r8d, 0x1219
cmp word [rcx], r8w
je 0x18002bde7
inc eax
add rcx, 0x10
cmp eax, edx
jb 0x18002bdd5
jmp 0x18002bdf5
mov r9d, eax
shl r9, 4
add r9, 4
add r9, rdi
mov r8d, 5
mov edx, r14d
mov rcx, r9
call fcn.1800298b0
lea rsi, [0x180000000]
cmp dword [rsp + 0x44], r12d
je case.default.0x18002be8f
cmp dword [rsp + 0x48], r12d
je case.default.0x18002be8f
mov rax, qword [0x1800c59f8]
mov ecx, dword [r15 + 8]
call rax
mov r8d, dword [rdi]
mov r11d, eax
mov r10, r12
mov ecx, r12d
test r8d, r8d
je 0x18002be7a
mov r9d, dword [rsp + 0x44]
mov ebx, 0x1212
nop dword [rax + rax]
mov eax, ecx
add rax, rax
cmp word [rdi + rax*8 + 4], bx
lea rdx, [rdi + rax*8]
jne 0x18002be6d
cmp r9d, ebp
jbe 0x18002be76
cmp word [rdi + rax*8 + 8], r12w
je 0x18002be76
inc ecx
cmp ecx, r8d
jb 0x18002be50
jmp 0x18002be7a
lea r10, [rdx + 4]
lea eax, [r11 - 1]
cmp eax, 5
ja case.default.0x18002be8f
cdqe
mov ecx, dword [rsi + rax*4 + 0x2bf08]
add rcx, rsi
jmp rcx
mov ebp, 5
jmp case.0x18002be8f.2
mov ebp, 2
jmp case.0x18002be8f.2
mov ebp, r12d
jmp case.0x18002be8f.2
mov ebp, 3
jmp case.0x18002be8f.2
mov ebp, 4
mov r8d, 5
mov edx, ebp
mov rcx, r10
call fcn.1800298b0
movzx eax, r12w
mov rcx, qword [rsp + 0x180]
xor rcx, rsp
call fcn.180032180
add rsp, 0x190
pop r15
pop r14
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
push rbx
push rbp
push rdi
push r14
sub rsp, 0x98
mov eax, dword [0x1800cca00]
mov rbx, rcx
cmp eax, 0xffffffff
jne 0x18002bfb0
mov rcx, qword [0x1800cc980]
lea r8, str.__ERR_ImageXfer:_CANCEL_
mov edi, 3
mov dword [0x1800cca00], 1
xor r9d, r9d
mov edx, 2
movzx ebx, di
call fcn.180007320
cmp dword [0x1800cca08], 0
mov dword [0x1800cca00], edi
je 0x18002cfa5
xor ebp, ebp
lea rcx, [0x1800cca10]
mov dword [0x1800cca08], ebp
call qword [case.0x180030475.0]
movzx eax, bx
add rsp, 0x98
pop r14
pop rdi
pop rbp
pop rbx
ret
mov qword [rsp + 0x88], r13
cmp eax, 3
jge 0x18002bfd9
cmp dword [0x1800c6530], 6
jne 0x18002bfe4
cmp dword [0x1800cc9f8], 0
jg 0x18002bfe4
cmp word [0x1800cc9f4], 0
jne 0x18002bfe4
call fcn.18002a310
mov eax, dword [0x1800cca00]
mov r13d, 1
cmp eax, 2
je 0x18002bff6
mov dword [0x1800cca00], r13d
cmp dword [0x1800cc9f0], 0
je 0x18002c017
movzx eax, word [0x1800cc9f4]
test ax, ax
je 0x18002c017
mov ebx, r13d
lea r8, str.__ERR_ImageXfer:_ScanError_
jmp 0x18002c030
cmp dword [0x1800cc9f8], 0
jg 0x18002c07d
movzx ebx, r13w
lea r8, str.__ERR_ImageXfer:_invalid_hdoc_
mov eax, 0x8002
mov rcx, qword [0x1800cc980]
xor r9d, r9d
mov edx, 2
mov word [0x1800cc9e8], ax
call fcn.180007320
cmp dword [0x1800cca08], 0
mov edi, 3
mov dword [0x1800cca00], edi
je 0x18002cf9d
xor ebp, ebp
lea rcx, [0x1800cca10]
mov dword [0x1800cca08], ebp
call qword [case.0x180030475.0]
jmp 0x18002cf9d
movzx ecx, word [rbx + 0xc]
sub ecx, 0x103
je 0x18002c467
sub ecx, r13d
je 0x18002c3ec
cmp ecx, r13d
je 0x18002c0a7
lea r8, str.__ERR_ImageXfer:_invalid_DAT_
jmp 0x18002cf79
cmp word [rbx + 0xe], r13w
jne 0x18002cf8d
mov rcx, qword [0x1800cc980]
call fcn.180006a80
mov r14d, 2
test r14b, al
je 0x18002c10d
mov rcx, qword [0x1800cc980]
lea r9, [0x1800ccdb0]
lea r8, [0x1800abc88]
mov edx, r14d
call fcn.1800073b0
mov eax, dword [0x1800cad54]
lea r8, [0x1800abca8]
mov r9d, dword [0x1800ccafc]
mov edx, r14d
mov rcx, qword [0x1800cc980]
mov dword [rsp + 0x20], eax
call fcn.1800073b0
mov edx, dword [0x1800ccafc]
mov ecx, edx
inc dword [0x1800cc9d8]
mov r9d, dword [0x1800cad54]
sub ecx, r13d
je 0x18002c257
sub ecx, r13d
je 0x18002c1ca
cmp ecx, r13d
jne 0x18002c3b7
test r9d, r9d
je 0x18002c16c
cmp r9d, r14d
je 0x18002c265
cmp r9d, 4
jne 0x18002c3b7
cmp dword [0x1800cab84], 0
je 0x18002c3b7
mov edi, 0x1b
jmp 0x18002c2ef
movzx ecx, word [0x1800caaae]
test ecx, ecx
je 0x18002c1b3
sub ecx, 6
je 0x18002c19c
cmp ecx, r13d
jne 0x18002c3b7
cmp dword [0x1800cab74], 0
je 0x18002c3b7
mov edi, 0x38
jmp 0x18002c2ef
cmp dword [0x1800cab7c], 0
je 0x18002c3b7
mov edi, 0x33
jmp 0x18002c2ef
cmp dword [0x1800cab68], 0
je 0x18002c3b7
mov edi, 0x31
jmp 0x18002c2ef
test r9d, r9d
je 0x18002c1f9
cmp r9d, r14d
je 0x18002c265
cmp r9d, 4
jne 0x18002c3b7
cmp dword [0x1800cab80], 0
je 0x18002c3b7
mov edi, 0x1a
jmp 0x18002c2ef
movzx ecx, word [0x1800caaac]
test ecx, ecx
je 0x18002c240
sub ecx, 6
je 0x18002c229
cmp ecx, r13d
jne 0x18002c3b7
cmp dword [0x1800cab70], 0
je 0x18002c3b7
mov edi, 0x37
jmp 0x18002c2ef
cmp dword [0x1800cab78], 0
je 0x18002c3b7
mov edi, 0x32
jmp 0x18002c2ef
cmp dword [0x1800cab64], 0
je 0x18002c3b7
mov edi, 0x30
jmp 0x18002c2ef
test r9d, r9d
je 0x18002c279
cmp r9d, r14d
jne 0x18002c3b7
cmp dword [0x1800cab88], 0
je 0x18002c3b7
mov edi, 0x11
jmp 0x18002c2ef
movzx eax, word [0x1800caaaa]
test eax, eax
je 0x18002c2dd
cmp eax, 5
je 0x18002c2a6
cmp eax, 7
jne 0x18002c3b7
cmp dword [0x1800cab6c], 0
je 0x18002c3b7
mov edi, 0x36
jmp 0x18002c2ef
cmp dword [0x1800cab5c], 0
mov eax, dword [0x1800cad5c]
je 0x18002c2c1
cmp eax, r13d
jne 0x18002c2c1
mov edi, 0x2a
jmp 0x18002c2ef
cmp dword [0x1800cab60], 0
je 0x18002c3b7
test eax, eax
jne 0x18002c3b7
mov edi, 0x2b
jmp 0x18002c2ef
cmp dword [0x1800cab58], 0
je 0x18002c3b7
mov edi, 0x29
mov rax, qword [case.0x180030475.0]
lea rdx, [rsp + 0xc8]
xor ebp, ebp
lea rcx, [0x1800ccdb0]
xor r8d, r8d
mov qword [rsp + 0xc8], rbp
call rax
test eax, eax
jne 0x18002c380
mov rax, qword [case.0x180030475.0]
mov r8d, edi
mov edx, dword [0x1800cc9f8]
mov ebx, 6
mov rcx, qword [rsp + 0xc8]
call rax
test eax, eax
je 0x18002c364
mov ecx, 5
lea r8, str.__ERR_writing_file:__d_
mov word [0x1800cc9e8], cx
mov r9d, eax
mov rcx, qword [0x1800cc980]
mov edx, r14d
movzx ebx, r13w
call fcn.1800073b0
mov rcx, qword [rsp + 0xc8]
call qword [case.0x180030475.0]
call fcn.18002aef0
cmp bx, 6
jmp 0x18002c438
mov ecx, 5
lea r8, str.__ERR_opening_file:__d_
mov word [0x1800cc9e8], cx
mov r9d, eax
mov rcx, qword [0x1800cc980]
mov edx, r14d
movzx ebx, r13w
call fcn.1800073b0
call fcn.18002aef0
cmp bx, 6
jmp 0x18002c438
mov ecx, 5
mov dword [rsp + 0x20], edx
mov word [0x1800cc9e8], cx
lea r8, str.__ERR_ImageXfer:_invalid_TWFF__u_DPU_DDCT__u_
mov rcx, qword [0x1800cc980]
mov edx, r14d
movzx ebx, r13w
call fcn.1800073b0
call fcn.18002aef0
cmp bx, 6
jmp 0x18002c438
cmp word [rbx + 0xe], r13w
jne 0x18002cf8d
xor r8d, r8d
lea rdx, [0x1800ccb28]
lea rcx, [0x1800cc9f0]
call fcn.18002d3f0
movzx ecx, word [rbx + 0xc]
lea rdx, [0x1800ccb28]
call fcn.180030880
test eax, eax
je 0x18002c44d
mov rcx, rbx
call fcn.18002d010
movzx edi, ax
call fcn.18002aef0
cmp di, 6
movzx ebx, di
jne 0x18002cf9d
mov ecx, 7
call fcn.180023b50
jmp 0x18002cf9d
mov ecx, 5
movzx ebx, r13w
mov word [0x1800cc9e8], cx
call fcn.18002aef0
jmp 0x18002cf9d
cmp word [rbx + 0xe], r13w
jne 0x18002cf72
xor ebp, ebp
mov qword [rsp + 0xc0], rsi
mov rsi, qword [rbx + 0x10]
mov r14d, 2
mov qword [rsp + 0x80], r15
mov qword [rsp + 0xd8], rbp
mov eax, dword [rsi + 0x1a]
mov dword [rsi + 0x16], ebp
cmp eax, 9
je 0x18002c5bd
cmp eax, 0x11
je 0x18002c591
lea r8, str.__ERR_ImageXfer:_Memory.Flags_value_not_supported_
mov rcx, qword [0x1800cc980]
mov edx, r14d
call fcn.1800073b0
cmp dword [0x1800cc9f8], ebp
jle 0x18002c4f6
cmp dword [0x1800cca08], ebp
je 0x18002c4e7
lea rcx, [0x1800cca10]
mov dword [0x1800cca08], ebp
call qword [case.0x180030475.0]
movzx edx, word [0x1800cc9f8]
xor ecx, ecx
call qword [case.0x180030475.0]
mov rcx, qword [0x1800ccd88]
test rcx, rcx
je 0x18002c525
cmp qword [0x1800ccd90], rbp
je 0x18002c51f
call qword [sym.imp.KERNEL32.dll_GlobalUnlock]
mov rcx, qword [0x1800ccd88]
mov qword [0x1800ccd90], rbp
call qword [sym.imp.KERNEL32.dll_GlobalFree]
xor edx, edx
lea rcx, [0x1800cc9f0]
mov r8d, 0x3b0
call fcn.1800a24f0
mov rcx, qword [0x1800cc980]
lea r8, str.__ERR_ImageXfer:_pMemXferDst_not_initialized_
xor r9d, r9d
mov edx, r14d
call fcn.180007320
mov eax, 9
movzx ebx, r13w
mov word [0x1800cc9e8], ax
mov rax, qword [rsp + 0xd8]
mov r15, qword [rsp + 0x80]
mov rsi, qword [rsp + 0xc0]
test rax, rax
je 0x18002cf9d
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GlobalUnlock]
jmp 0x18002cf9d
mov rcx, qword [rsi + 0x22]
call qword [sym.imp.KERNEL32.dll_GlobalLock]
mov rdi, rax
test rax, rax
je 0x18002c5b1
mov rax, qword [rsi + 0x22]
mov qword [rsp + 0xd8], rax
jmp 0x18002c5d2
lea r8, str.__ERR_ImageXfer:_error_locking_TheMem_
jmp 0x18002c4b5
mov rdi, qword [rsi + 0x22]
mov qword [rsp + 0xd8], rbp
test rdi, rdi
je 0x18002c4c4
cmp dword [0x1800cca04], ebp
jne 0x18002c60d
mov r8d, r14d
lea rdx, [0x1800ccb28]
lea rcx, [0x1800cc9f0]
call fcn.18002d3f0
movzx ecx, word [rbx + 0xc]
lea rdx, [0x1800ccb28]
call fcn.180030880
inc dword [0x1800cc9d4]
mov dword [0x1800cca04], r13d
mov eax, dword [rsi + 0x1e]
lea r8, [0x1800abac8]
mov r9d, dword [0x1800cca08]
mov edx, r14d
mov rcx, qword [0x1800cc980]
mov dword [rsp + 0x30], eax
mov eax, dword [0x1800cca0c]
mov qword [rsp + 0x28], rdi
mov dword [rsp + 0x20], eax
call fcn.1800073b0
cmp dword [0x1800cca08], ebp
je 0x18002cee7
mov r9d, dword [0x1800cca0c]
mov r15d, 5
mov qword [rsp + 0x90], r12
lea eax, [r9 - 0xa]
cmp eax, 0x2c
ja case.0x18002c689.17
lea rdx, [0x180000000]
cdqe
movzx eax, byte [rdx + rax + 0x2cfd8]
mov ecx, dword [rdx + rax*4 + 0x2cfb8]
add rcx, rdx
jmp rcx
mov ecx, dword [0x1800ccaec]
lea eax, [rcx + 0x1f]
and eax, 0xffffffe0
cdq
and edx, 7
lea r12d, [rdx + rax]
mov eax, dword [0x1800cab40]
sar r12d, 3
mov dword [rsp + 0xc8], r12d
test eax, eax
je 0x18002c6d3
dec ecx
add ecx, eax
dec eax
not eax
and eax, ecx
cdq
and edx, 7
lea r12d, [rdx + rax]
sar r12d, 3
mov dword [rsp + 0xc8], r12d
mov r9d, dword [0x1800ccaf0]
mov r15d, r9d
mov r10d, dword [0x1800ccad8]
sub r15d, r10d
mov ecx, dword [rsi + 0x1e]
mov eax, r15d
imul eax, r12d
cmp eax, ecx
jbe 0x18002c6ff
xor edx, edx
mov eax, ecx
div r12d
mov r15d, eax
mov r8d, dword [0x1800cca78]
mov edx, r15d
imul edx, r12d
sub ecx, edx
mov dword [rsp + 0xd0], edx
cmp ecx, r8d
jb 0x18002c731
lea eax, [r10 + r15]
cmp eax, r9d
jae 0x18002c731
inc r15d
add edx, r8d
mov dword [rsp + 0xd0], edx
mov rcx, qword [0x1800cca5c]
call qword [sym.imp.KERNEL32.dll_GlobalLock]
mov rbx, rax
test rax, rax
je 0x18002c8ae
movsxd rdx, dword [0x1800cca78]
lea r8, [0x1800abaf0]
mov eax, dword [0x1800ccad8]
mov rcx, rdx
imul rcx, rax
mov rax, qword [0x1800ccae0]
add rcx, qword [0x1800cca64]
mov qword [rsp + 0x40], rax
add rbx, rcx
mov eax, dword [rsp + 0xd0]
mov r9, rbx
mov rcx, qword [0x1800cc980]
mov dword [rsp + 0x38], r12d
mov dword [rsp + 0x30], edx
mov edx, r14d
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], r15d
call fcn.1800073b0
movsxd rdx, dword [0x1800cca78]
cmp r12d, edx
jne 0x18002c7d4
cmp qword [0x1800ccae0], rbp
jne 0x18002c865
mov r8d, dword [rsp + 0xd0]
mov rdx, rbx
mov rcx, rdi
call fcn.1800a1e50
jmp 0x18002c820
cmp qword [0x1800ccae0], rbp
jne 0x18002c865
mov r12d, r15d
test r15d, r15d
jle 0x18002c818
mov ebp, dword [rsp + 0xc8]
mov rax, rdx
mov r8, rax
mov rdx, rbx
mov rcx, rdi
dec r12d
call fcn.1800a1e50
movsxd rax, dword [0x1800cca78]
add rdi, rbp
add rbx, rax
test r12d, r12d
jg 0x18002c7f3
xor ebp, ebp
mov r12d, dword [rsp + 0xc8]
mov rcx, qword [0x1800cca5c]
call qword [sym.imp.KERNEL32.dll_GlobalUnlock]
mov word [rsi], bp
mov dword [rsi + 2], r12d
mov eax, dword [0x1800ccaec]
mov dword [rsi + 6], eax
mov dword [rsi + 0xa], r15d
mov dword [rsi + 0xe], ebp
mov eax, dword [0x1800ccad8]
mov dword [rsi + 0x12], eax
mov eax, dword [rsp + 0xd0]
mov dword [rsi + 0x16], eax
mov ecx, dword [0x1800ccad8]
add ecx, r15d
jmp 0x18002cb07
mov r9d, r15d
test r15d, r15d
jle 0x18002c820
mov r10d, r12d
dec r9d
test edx, edx
jle 0x18002c8a1
mov r8, rdi
sub r8, rbx
nop dword [rax]
movzx ecx, byte [rbx]
dec edx
mov rax, qword [0x1800ccae0]
movzx ecx, byte [rcx + rax]
mov byte [r8 + rbx], cl
inc rbx
test edx, edx
jg 0x18002c880
mov edx, dword [0x1800cca78]
add rdi, r10
test r9d, r9d
jg 0x18002c870
jmp 0x18002c820
mov word [0x1800cc9e8], r14w
lea r8, str.__ERR_blockXfer_idt10:_Lock_failed_
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rsi], xmm0
mov qword [rsp + 0x70], rax
xor r9d, r9d
movups xmmword [rsi + 0x10], xmm0
mov edx, r14d
movzx ebx, r13w
movsd xmm0, qword [rsp + 0x70]
movsd qword [rsi + 0x20], xmm0
mov word [rsi + 0x28], ax
mov rcx, qword [0x1800cc980]
call fcn.180007320
mov r15d, 5
jmp 0x18002cead
movzx eax, word [0x1800ccb60]
lea rcx, [0x1800cc9f0]
mov r8d, dword [rsi + 0x1e]
mov r9, rsi
mov rdx, rdi
mov word [rsp + 0x20], ax
call fcn.180029df0
movzx ebx, ax
jmp 0x18002cead
movsxd r12, dword [0x1800ccaec]
mov r15d, dword [0x1800ccaf0]
mov ecx, r12d
sub r15d, dword [0x1800ccad8]
mov eax, dword [rsi + 0x1e]
imul ecx, r15d
cmp ecx, eax
jbe 0x18002c953
xor edx, edx
div r12d
mov r15d, eax
mov rcx, qword [0x1800cca5c]
call qword [sym.imp.KERNEL32.dll_GlobalLock]
mov ebx, dword [0x1800ccad8]
mov edx, r14d
imul ebx, dword [0x1800cca78]
mov r8, qword [0x1800cca64]
mov rcx, qword [0x1800cc980]
add r8, rax
mov dword [rsp + 0x28], r12d
mov dword [rsp + 0x20], r15d
add rbx, r8
lea r8, [0x1800abb50]
mov r9, rbx
call fcn.1800073b0
mov r8d, r15d
mov rdx, rbx
imul r8, r12
mov rcx, rdi
call fcn.1800a1e50
mov rcx, qword [0x1800cca5c]
call qword [sym.imp.KERNEL32.dll_GlobalUnlock]
mov word [rsi], bp
mov ebx, ebp
mov dword [rsi + 2], r12d
mov edx, 6
mov eax, dword [0x1800ccaec]
mov dword [rsi + 6], eax
mov dword [rsi + 0xa], r15d
mov dword [rsi + 0xe], ebp
mov eax, dword [0x1800ccad8]
mov dword [rsi + 0x12], eax
mov eax, r15d
imul eax, r12d
mov dword [rsi + 0x16], eax
mov ecx, dword [0x1800ccad8]
add ecx, r15d
mov r15d, 5
cmp ecx, dword [0x1800ccaf0]
mov dword [0x1800ccad8], ecx
cmovae bx, dx
jmp 0x18002cead
movsxd r12, dword [0x1800ccaec]
mov r13d, dword [0x1800ccaf0]
mov ecx, r12d
sub r13d, dword [0x1800ccad8]
mov eax, dword [rsi + 0x1e]
imul ecx, r13d
cmp ecx, eax
jbe 0x18002ca3c
xor edx, edx
div r12d
mov r13d, eax
mov rcx, qword [0x1800cca5c]
call qword [sym.imp.KERNEL32.dll_GlobalLock]
mov edx, dword [0x1800cca78]
lea r8, [0x1800abb68]
mov ebx, dword [0x1800ccaf0]
sub ebx, dword [0x1800ccad8]
add rax, qword [0x1800cca64]
dec ebx
mov rcx, qword [0x1800cc980]
imul ebx, edx
mov dword [rsp + 0x30], r12d
mov dword [rsp + 0x28], edx
mov edx, r14d
mov dword [rsp + 0x20], r13d
add rbx, rax
mov r9, rbx
call fcn.1800073b0
mov r15d, r13d
test r13d, r13d
je 0x18002cac1
nop dword [rax]
mov r8, r12
mov rdx, rbx
mov rcx, rdi
call fcn.1800a1e50
movsxd rax, dword [0x1800cca78]
add rdi, r12
sub rbx, rax
sub r15d, 1
jne 0x18002caa0
mov rcx, qword [0x1800cca5c]
call qword [sym.imp.KERNEL32.dll_GlobalUnlock]
mov word [rsi], bp
mov dword [rsi + 2], r12d
mov eax, dword [0x1800ccaec]
mov dword [rsi + 6], eax
mov dword [rsi + 0xa], r13d
mov dword [rsi + 0xe], ebp
mov eax, dword [0x1800ccad8]
mov dword [rsi + 0x12], eax
mov eax, r13d
imul eax, r12d
mov dword [rsi + 0x16], eax
mov ecx, dword [0x1800ccad8]
add ecx, r13d
mov r13d, 1
cmp ecx, dword [0x1800ccaf0]
mov ebx, ebp
mov edx, 6
mov dword [0x1800ccad8], ecx
cmovae bx, dx
mov r15d, 5
jmp 0x18002cead
mov eax, dword [0x1800ccaec]
mov r12d, dword [0x1800ccaf0]
sub r12d, dword [0x1800ccad8]
mov ecx, r12d
lea r13d, [rax + rax*2]
mov eax, dword [rsi + 0x1e]
imul ecx, r13d
mov dword [rsp + 0xc8], r13d
cmp ecx, eax
jbe 0x18002cb5f
xor edx, edx
div r13d
mov r12d, eax
mov rcx, qword [0x1800cca5c]
call qword [sym.imp.KERNEL32.dll_GlobalLock]
mov r8d, dword [0x1800cca78]
mov ebx, dword [0x1800ccad8]
mov rdx, qword [0x1800cca64]
mov rcx, qword [0x1800cc980]
add rdx, rax
imul ebx, r8d
mov dword [rsp + 0x30], r13d
mov dword [rsp + 0x28], r8d
lea r8, [0x1800abb68]
mov dword [rsp + 0x20], r12d
add rbx, rdx
mov edx, r14d
mov r9, rbx
call fcn.1800073b0
mov r15d, r12d
test r12d, r12d
je 0x18002cbe9
movsxd r13, r13d
nop dword [rax]
mov r8, r13
mov rdx, rbx
mov rcx, rdi
call fcn.1800a1e50
movsxd rax, dword [0x1800cca78]
add rdi, r13
add rbx, rax
sub r15d, 1
jne 0x18002cbc0
mov r13d, dword [rsp + 0xc8]
mov rcx, qword [0x1800cca5c]
call qword [sym.imp.KERNEL32.dll_GlobalUnlock]
mov word [rsi], bp
mov dword [rsi + 2], r13d
mov eax, dword [0x1800ccaec]
mov dword [rsi + 6], eax
mov dword [rsi + 0xa], r12d
mov dword [rsi + 0xe], ebp
mov eax, dword [0x1800ccad8]
mov dword [rsi + 0x12], eax
mov eax, r12d
imul eax, r13d
mov dword [rsi + 0x16], eax
mov ecx, dword [0x1800ccad8]
add ecx, r12d
jmp 0x18002cb01
mov eax, dword [0x1800ccaec]
mov r15d, dword [0x1800ccaf0]
sub r15d, dword [0x1800ccad8]
mov ecx, r15d
lea r12d, [rax + rax*2]
mov eax, dword [rsi + 0x1e]
imul ecx, r12d
cmp ecx, eax
jbe 0x18002cc5c
xor edx, edx
div r12d
mov r15d, eax
mov rcx, qword [0x1800cca5c]
call qword [sym.imp.KERNEL32.dll_GlobalLock]
mov r8d, dword [0x1800cca78]
mov ebx, dword [0x1800ccad8]
mov rdx, qword [0x1800cca64]
mov rcx, qword [0x1800cc980]
add rdx, rax
imul ebx, r8d
mov dword [rsp + 0x30], r12d
mov dword [rsp + 0x28], r8d
lea r8, [0x1800abb68]
mov dword [rsp + 0x20], r15d
add rbx, rdx
mov edx, r14d
mov r9, rbx
call fcn.1800073b0
mov r9d, r15d
test r15d, r15d
je 0x18002cd15
movsxd r10, r12d
nop word [rax + rax]
mov edx, dword [0x1800ccaec]
dec r9d
test edx, edx
jle 0x18002cd03
mov r8, rbx
lea rcx, [rdi + 2]
sub r8, rdi
nop word [rax + rax]
movzx eax, byte [rcx + r8]
dec edx
mov byte [rcx - 2], al
movzx eax, byte [rcx + r8 - 1]
mov byte [rcx - 1], al
movzx eax, byte [rcx + r8 - 2]
mov byte [rcx], al
lea rcx, [rcx + 3]
test edx, edx
jg 0x18002cce0
movsxd rax, dword [0x1800cca78]
add rdi, r10
add rbx, rax
test r9d, r9d
jne 0x18002ccc0
mov rcx, qword [0x1800cca5c]
call qword [sym.imp.KERNEL32.dll_GlobalUnlock]
mov word [rsi], bp
mov dword [rsi + 2], r12d
mov eax, dword [0x1800ccaec]
mov dword [rsi + 6], eax
mov dword [rsi + 0xa], r15d
mov dword [rsi + 0xe], ebp
mov eax, dword [0x1800ccad8]
mov dword [rsi + 0x12], eax
mov eax, r15d
imul eax, r12d
mov dword [rsi + 0x16], eax
mov ecx, dword [0x1800ccad8]
add ecx, r15d
jmp 0x18002cb07
mov eax, dword [0x1800ccaec]
mov r15d, dword [0x1800ccaf0]
sub r15d, dword [0x1800ccad8]
mov ecx, r15d
lea r12d, [rax + rax*2]
mov eax, dword [rsi + 0x1e]
imul ecx, r12d
cmp ecx, eax
jbe 0x18002cd88
xor edx, edx
div r12d
mov r15d, eax
mov rcx, qword [0x1800cca5c]
call qword [sym.imp.KERNEL32.dll_GlobalLock]
movsxd rdx, dword [0x1800cca78]
lea r8, [0x1800abb68]
mov ecx, dword [0x1800ccad8]
movsxd rbx, dword [0x1800ccaf0]
sub rbx, rcx
mov dword [rsp + 0x30], r12d
mov rcx, qword [0x1800cc980]
dec rbx
imul rbx, rdx
mov dword [rsp + 0x28], edx
mov edx, r14d
add rbx, qword [0x1800cca64]
add rbx, rax
mov dword [rsp + 0x20], r15d
mov r9, rbx
call fcn.1800073b0
mov r9d, r15d
test r15d, r15d
je 0x18002ce45
movsxd r10, r12d
nop
mov edx, dword [0x1800ccaec]
dec r9d
test edx, edx
jle 0x18002ce33
mov r8, rbx
lea rcx, [rdi + 2]
sub r8, rdi
nop word [rax + rax]
movzx eax, byte [rcx + r8]
dec edx
mov byte [rcx - 2], al
movzx eax, byte [rcx + r8 - 1]
mov byte [rcx - 1], al
movzx eax, byte [rcx + r8 - 2]
mov byte [rcx], al
lea rcx, [rcx + 3]
test edx, edx
jg 0x18002ce10
movsxd rax, dword [0x1800cca78]
add rdi, r10
sub rbx, rax
test r9d, r9d
jne 0x18002cdf0
mov rcx, qword [0x1800cca5c]
call qword [sym.imp.KERNEL32.dll_GlobalUnlock]
mov word [rsi], bp
mov dword [rsi + 2], r12d
mov eax, dword [0x1800ccaec]
mov dword [rsi + 6], eax
mov dword [rsi + 0xa], r15d
mov dword [rsi + 0xe], ebp
mov eax, dword [0x1800ccad8]
mov dword [rsi + 0x12], eax
mov eax, r15d
imul eax, r12d
mov dword [rsi + 0x16], eax
mov ecx, dword [0x1800ccad8]
add ecx, r15d
jmp 0x18002cb07
mov rcx, qword [0x1800cc980]
lea r8, str.__ERR_ImageXfer:_invalid_IDT_x_02X_
mov edx, r14d
call fcn.1800073b0
mov ebx, 0xffff
mov word [0x1800cc9e8], r15w
cmp dword [rsi + 0x16], 0
mov r12, qword [rsp + 0x90]
jne 0x18002cf12
test bx, bx
jne 0x18002cf12
mov rcx, qword [0x1800cc980]
lea r8, str.__ERR_ImageXfer:_buffer_too_small_
xor r9d, r9d
mov edx, r14d
call fcn.180007320
mov eax, 9
mov word [0x1800cc9e8], ax
jmp 0x18002cf0e
mov rcx, qword [0x1800cc980]
lea r8, str.__ERR_ImageXfer:_imgAccOpen_failed_
xor r9d, r9d
mov edx, r14d
call fcn.180007320
mov r15d, 5
mov word [0x1800cc9e8], r15w
movzx ebx, r13w
movzx ecx, bx
test ecx, ecx
je 0x18002c562
sub ecx, 1
je 0x18002cf5a
sub ecx, r14d
je 0x18002cf4a
cmp ecx, 3
je 0x18002cf36
call fcn.18002aef0
jmp 0x18002c562
mov ecx, 7
call fcn.180023b50
call fcn.18002aef0
jmp 0x18002c562
mov dword [0x1800cc9a4], ebp
call fcn.18002aef0
jmp 0x18002c562
mov ecx, r15d
mov dword [0x1800cc9a4], ebp
call fcn.180023b50
call fcn.18002aef0
jmp 0x18002c562
lea r8, str.__ERR_ImageXfer:_MSG_..._not_supported_
mov rcx, qword [0x1800cc980]
xor r9d, r9d
mov edx, 2
call fcn.180007320
mov eax, 9
movzx ebx, r13w
mov word [0x1800cc9e8], ax
mov r13, qword [rsp + 0x88]
movzx eax, bx
add rsp, 0x98
pop r14
pop rdi
pop rbp
pop rbx
ret