Function at 0x14002a568
Capabilities:
Extract resource via kernel32 functions

Disassembly:
mov qword [rsp + 8], rbx
mov dword [rsp + 0x20], r9d
mov dword [rsp + 0x10], edx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x40
mov r13d, edx
mov esi, r9d
mov rbp, r8
mov rbx, rcx
test edx, edx
je 0x14002a857
call fcn.140019538
movzx edx, r13w
mov r8d, 0xf1
mov rdi, qword [rax + 0x18]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_FindResourceW]
test rax, rax
jne 0x14002a5c1
xor eax, eax
jmp 0x14002a83f
mov rdx, rax
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_LoadResource]
mov qword [rsp + 0x38], rax
mov r14, rax
test rax, rax
je 0x14002a5ba
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_LockResource]
mov rdi, rax
test rax, rax
je 0x14002a5ba
movzx ecx, word [rax + 6]
mov eax, 4
mul rcx
mov rcx, 0xffffffffffffffff
cmovo rax, rcx
mov rcx, rax
call fcn.1400051a8
xor r8d, r8d
mov qword [rsp + 0x28], rax
test rax, rax
je 0x14002a85d
movzx eax, word [rdi + 2]
movzx ecx, word [rdi + 4]
mov dword [rsp + 0x20], eax
mov dword [rsp + 0x24], ecx
lea r15d, [rax + 6]
mov dword [rsp + 0x30], r15d
lea r12d, [rcx + 6]
mov dword [rsp + 0x34], r12d
test esi, esi
je 0x14002a649
mov eax, dword [rbx + 0x1178]
jmp 0x14002a64f
mov eax, dword [0x1402599c4]
mov esi, 1
test eax, eax
jne 0x14002a715
mov eax, dword [0x14025ad70]
test eax, eax
jne 0x14002a67d
lea rcx, [0x14025ad70]
call fcn.14003fb98
mov eax, esi
xor r8d, r8d
mov dword [0x14025ad70], eax
mov ecx, dword [0x14025b030]
movsd xmm2, qword [0x14025b028]
test ecx, ecx
je 0x14002a694
movaps xmm0, xmm2
jmp 0x14002a69c
movsd xmm0, qword [0x1401bb558]
ucomisd xmm0, qword [0x1401bb558]
jp 0x14002a6a8
je 0x14002a715
test eax, eax
jne 0x14002a6cf
lea rcx, [0x14025ad70]
call fcn.14003fb98
mov ecx, dword [0x14025b030]
xor r8d, r8d
movsd xmm2, qword [0x14025b028]
mov dword [0x14025ad70], esi
test ecx, ecx
jne 0x14002a6db
movsd xmm2, qword [0x1401bb558]
movd xmm0, r15d
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm2
addsd xmm0, qword [0x1401bb550]
cvttsd2si eax, xmm0
movd xmm0, r12d
cvtdq2pd xmm0, xmm0
mov dword [rsp + 0x30], eax
mulsd xmm0, xmm2
addsd xmm0, qword [0x1401bb550]
cvttsd2si eax, xmm0
mov dword [rsp + 0x34], eax
mov edx, dword [rsp + 0x98]
mov rcx, qword [rsp + 0x30]
test edx, edx
je 0x14002a73a
mov r8, qword [rsp + 0x20]
mov rdx, rcx
mov rcx, rbx
xor r9d, r9d
call fcn.140030f58
jmp 0x14002a758
movsd xmm0, qword [0x140259c58]
ucomisd xmm0, qword [0x1401bb558]
jp 0x14002a762
jne 0x14002a762
mov rdx, qword [rsp + 0x20]
call fcn.1400312b4
mov edx, dword [rsp + 0x98]
xor r8d, r8d
cmp dword [rbp + 4], r8d
jne 0x14002a76c
mov dword [rbp + 4], r13d
cmp dword [rbx + 0x1308], r8d
jne 0x14002a792
mov rax, qword [rbx]
mov r8d, edx
mov rdx, rbp
mov rcx, rbx
call qword [rax + 0x668]
xor r8d, r8d
test eax, eax
je 0x14002a82a
mov r15d, r8d
mov r12d, dword [rbx + 0x114c]
cmp r8w, word [rdi + 6]
jae 0x14002a7fa
mov r14, qword [rsp + 0x28]
lea rbp, [rdi + 8]
mov r13d, dword [rsp + 0x98]
movzx edx, word [rbp]
mov dword [r14], edx
test r13d, r13d
jne 0x14002a7d9
test edx, edx
je 0x14002a7d9
lea rcx, vtable.CMap_unsigned_int__unsigned_int__int__int_.0
call fcn.140117a00
mov dword [rax], r12d
add r12d, esi
xor r8d, r8d
movzx eax, word [rdi + 6]
add r15d, esi
add rbp, 2
add r14, 4
cmp r15d, eax
jl 0x14002a7b4
mov r13d, dword [rsp + 0x88]
mov r14, qword [rsp + 0x38]
mov rax, qword [rbx]
mov r9d, esi
mov rdx, qword [rsp + 0x28]
mov rcx, rbx
mov dword [rbx + 0x1308], r13d
movzx r8d, word [rdi + 6]
call qword [rax + 0x678]
xor r15d, r15d
mov esi, eax
test eax, eax
jne 0x14002a82a
mov dword [rbx + 0x1308], r15d
mov rcx, qword [rsp + 0x28]
call fcn.1400051a0
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_FreeResource]
mov eax, esi
mov rbx, qword [rsp + 0x80]
add rsp, 0x40
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.14000b268
int3
call fcn.14000b268
int3