Function at 0x445007
Capabilities:
Extract resource via kernel32 functions

Disassembly:
push 0x54
mov eax, 0x4a0a9a
call fcn.0048bd85
mov esi, ecx
xor edi, edi
mov dword [ebp - 0x30], edi
mov dword [ebp - 0x2c], edi
mov dword [ebp - 0x28], edi
mov dword [ebp - 0x24], edi
call fcn.0046c34c
push eax
lea ecx, [ebp - 0x18]
call fcn.00401764
mov dword [ebp - 4], edi
call fcn.0046c34c
push eax
lea ecx, [ebp - 0x14]
call fcn.00401764
push 0xffffffffffffffff
push edi
lea ecx, [esi + 4]
mov byte [ebp - 4], 1
call fcn.0046efbc
push dword [ebp + 8]
lea ecx, [esi + 0x5c]
call fcn.004018c1
lea ecx, [ebp - 0x38]
call fcn.0046d9dc
mov byte [ebp - 4], 3
call fcn.004701ac
mov eax, dword [eax + 0xc]
push 0x17
push 0x7b1
push eax
call dword [sym.imp.KERNEL32.dll_FindResourceA]
mov ebx, eax
cmp ebx, edi
je 0x4450da
push ebx
push edi
call dword [sym.imp.KERNEL32.dll_LoadResource]
cmp eax, edi
je 0x4450da
push eax
call dword [sym.imp.KERNEL32.dll_LockResource]
cmp eax, edi
mov dword [ebp + 8], eax
je 0x4450da
call fcn.004701ac
mov eax, dword [eax + 0xc]
push ebx
push eax
call dword [sym.imp.KERNEL32.dll_SizeofResource]
push eax
push dword [ebp + 8]
lea ecx, [ebp + 8]
call fcn.0043c204
push eax
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 4
call fcn.004018c1
mov byte [ebp - 4], 3
mov ecx, dword [ebp + 8]
add ecx, 0xfffffff0
call fcn.0040174a
jmp 0x4450da
xor edi, edi
push 0
xor ecx, ecx
pop edx
sub ecx, 2
mov eax, edx
sbb eax, edi
xor ebx, ebx
cmp ebx, eax
jg 0x445101
jl 0x4450f4
xor eax, eax
cmp eax, ecx
jae 0x445101
cmp edx, edi
jg 0x445111
jl 0x445101
xor eax, eax
cmp eax, 0xa
ja 0x445111
lea ecx, [ebp - 0x14]
call fcn.0045ee51
cmp eax, edi
jne 0x44520f
mov eax, dword [ebp - 0x28]
add dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x24]
push edi
adc dword [ebp - 0x2c], eax
push 0xa
lea ecx, [ebp - 0x14]
call fcn.00406a9a
mov ebx, eax
cmp ebx, edi
jle 0x445190
push ebx
lea eax, [ebp + 8]
push eax
lea ecx, [ebp - 0x14]
call fcn.004013d0
push eax
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 5
call fcn.004018c1
mov byte [ebp - 4], 3
mov ecx, dword [ebp + 8]
add ecx, 0xfffffff0
call fcn.0040174a
mov eax, dword [ebp - 0x18]
mov eax, dword [eax - 0xc]
inc eax
cdq
mov dword [ebp - 0x28], eax
push ebx
lea eax, [ebp - 0x1c]
push eax
lea ecx, [ebp - 0x14]
mov dword [ebp - 0x24], edx
call fcn.004013ad
push eax
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 6
call fcn.004018c1
mov byte [ebp - 4], 3
mov ecx, dword [ebp - 0x1c]
add ecx, 0xfffffff0
call fcn.0040174a
jmp 0x44519c
jne 0x4451a6
mov dword [ebp - 0x28], 2
mov dword [ebp - 0x24], edi
lea edi, [ebp - 0x14]
call fcn.00403dc6
jmp 0x4451c8
lea eax, [ebp - 0x14]
push eax
lea ecx, [ebp - 0x18]
call fcn.004018c1
mov eax, dword [ebp - 0x18]
mov eax, dword [eax - 0xc]
inc eax
cdq
lea ecx, [ebp - 0x14]
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], edx
call fcn.00401979
lea edi, [ebp - 0x18]
call fcn.00403dc6
mov ebx, edi
call fcn.00403d78
mov eax, dword [ebp - 0x18]
cmp dword [eax - 0xc], 0
jle 0x4450d8
mov eax, edi
push 0x4b8bd0
push eax
call fcn.0045e96b
test eax, eax
pop ecx
pop ecx
jne 0x4450d8
lea ecx, [esi + 4]
mov eax, dword [ecx + 8]
mov edx, edi
push edx
push eax
call fcn.0046f328
jmp 0x4450d8
mov dword [ebp - 4], 1
call fcn.0046d9f2
call fcn.0046c34c
push eax
lea ecx, [ebp + 8]
call fcn.00401764
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 8
call fcn.004799d1
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 9
call fcn.004799d1
mov byte [ebp - 4], 0xa
cmp dword [esi + 0xc], edi
jle 0x445345
lea ebx, [esi + 0x18]
push edi
lea ecx, [esi + 4]
call fcn.0041a472
push eax
lea ecx, [ebp + 8]
call fcn.004018c1
push 0
push edi
mov ecx, ebx
call fcn.004798d4
lea eax, [ebp + 8]
push 0x4b8bd4
push eax
call fcn.0045e96b
test eax, eax
pop ecx
pop ecx
je 0x445292
push edi
push dword [ebp - 0x44]
lea ecx, [ebp - 0x4c]
call fcn.004798d4
jmp 0x44533b
lea eax, [ebp + 8]
push str.else
push eax
call fcn.0045e96b
test eax, eax
pop ecx
pop ecx
je 0x4452dd
mov eax, dword [ebp - 0x44]
dec eax
push eax
lea ecx, [ebp - 0x4c]
call fcn.00432e4f
push eax
push edi
mov ecx, ebx
mov dword [ebp - 0x1c], eax
call fcn.004798d4
lea eax, [edi + 1]
push eax
push dword [ebp - 0x1c]
mov ecx, ebx
call fcn.004798d4
mov eax, dword [ebp - 0x44]
push edi
dec eax
push eax
lea ecx, [ebp - 0x4c]
call fcn.00446acb
jmp 0x44533b
lea eax, [ebp + 8]
push str.endif
push eax
call fcn.0045e96b
test eax, eax
pop ecx
pop ecx
jne 0x445305
lea eax, [ebp + 8]
push str.end_if
push eax
call fcn.0045e96b
test eax, eax
pop ecx
pop ecx
je 0x44533b
mov eax, dword [ebp - 0x44]
dec eax
push eax
lea ecx, [ebp - 0x4c]
call fcn.00432e4f
push eax
push edi
mov ecx, ebx
mov dword [ebp - 0x1c], eax
call fcn.004798d4
lea eax, [edi + 1]
push eax
push dword [ebp - 0x1c]
mov ecx, ebx
call fcn.004798d4
mov eax, dword [ebp - 0x44]
push 1
dec eax
push eax
lea ecx, [ebp - 0x4c]
call fcn.00470270
inc edi
cmp edi, dword [esi + 0xc]
jl 0x445251
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 9
call fcn.004799e8
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 8
call fcn.004799e8
mov ecx, dword [ebp + 8]
add ecx, 0xfffffff0
call fcn.0040174a
mov ecx, dword [ebp - 0x14]
add ecx, 0xfffffff0
call fcn.0040174a
mov ecx, dword [ebp - 0x18]
add ecx, 0xfffffff0
call fcn.0040174a
xor eax, eax
inc eax
jmp 0x4453b7
call fcn.0048be2a
ret 4