Function at 0x438cc0
Capabilities:
Extract resource via kernel32 functions

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x43cbc7
mov eax, dword fs:[0]
push eax
sub esp, 0xf4
mov eax, dword [0x449464]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
push str.XMLFILE
push 0x78
mov eax, dword [0x44e9d0]
push eax
call dword [sym.imp.KERNEL32.dll_FindResourceW]
mov dword [ebp - 0x24], eax
mov ecx, dword [ebp - 0x24]
push ecx
mov edx, dword [0x44e9d0]
push edx
call dword [sym.imp.KERNEL32.dll_LoadResource]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
push eax
call dword [sym.imp.KERNEL32.dll_LockResource]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x24]
push ecx
push 0
call dword [sym.imp.KERNEL32.dll_SizeofResource]
mov dword [ebp - 0x20], eax
mov edx, dword [ebp - 0x20]
push edx
call fcn.00403ba0
add esp, 4
mov dword [ebp - 0x64], eax
mov eax, dword [ebp - 0x64]
mov dword [ebp - 0x18], eax
mov ecx, dword [ebp - 0x18]
mov dword [ebp - 0x14], ecx
mov edx, dword [ebp - 0x20]
push edx
mov eax, dword [ebp - 0x1c]
push eax
mov ecx, dword [ebp - 0x18]
push ecx
call fcn.004043d0
add esp, 0xc
mov dword [ebp - 0x28], 0
jmp 0x438d6f
mov edx, dword [ebp - 0x28]
add edx, 1
mov dword [ebp - 0x28], edx
mov eax, dword [ebp - 0x28]
cmp eax, dword [ebp - 0x20]
jge 0x438d9e
mov ecx, dword [ebp - 0x18]
add ecx, dword [ebp - 0x28]
movsx edx, byte [ecx]
cmp edx, 0xd
je 0x438d93
mov eax, dword [ebp - 0x18]
add eax, dword [ebp - 0x28]
movsx ecx, byte [eax]
cmp ecx, 0xa
jne 0x438d9c
mov edx, dword [ebp - 0x18]
add edx, dword [ebp - 0x28]
mov byte [edx], 0
jmp 0x438d66
mov dword [ebp - 0x2c], 0
mov eax, dword [ebp - 0x2c]
cmp eax, dword [ebp - 0x20]
jge 0x439088
mov ecx, dword [ebp - 0x14]
push ecx
lea ecx, [ebp - 0x5c]
call fcn.00434970
mov dword [ebp - 4], 0
lea ecx, [ebp - 0x3c]
call fcn.004346c0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x4c]
call fcn.004346c0
mov byte [ebp - 4], 2
push 0x4453e0
lea ecx, [ebp - 0x74]
call fcn.00434970
lea edx, [ebp - 0x74]
push edx
lea ecx, [ebp - 0x5c]
call fcn.00434730
mov dword [ebp - 0x60], eax
lea ecx, [ebp - 0x74]
call fcn.00434660
mov eax, dword [ebp - 0x60]
push eax
push 0
lea edx, [ebp - 0x84]
lea ecx, [ebp - 0x5c]
call fcn.004349c0
mov dword [ebp - 0xf0], eax
mov ecx, dword [ebp - 0xf0]
mov dword [ebp - 0xf4], ecx
mov byte [ebp - 4], 3
mov edx, dword [ebp - 0xf4]
push edx
lea ecx, [ebp - 0x3c]
call fcn.00434c00
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x84]
call fcn.00434660
lea ecx, [ebp - 0x5c]
call fcn.00434460
push eax
mov eax, dword [ebp - 0x60]
add eax, 1
push eax
lea edx, [ebp - 0x94]
lea ecx, [ebp - 0x5c]
call fcn.004349c0
mov dword [ebp - 0xf8], eax
mov ecx, dword [ebp - 0xf8]
mov dword [ebp - 0xfc], ecx
mov byte [ebp - 4], 4
mov edx, dword [ebp - 0xfc]
push edx
lea ecx, [ebp - 0x4c]
call fcn.00434c00
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x94]
call fcn.00434660
lea ecx, [ebp - 0x3c]
call fcn.00434490
movzx eax, al
test eax, eax
je 0x438eda
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x4c]
call fcn.00434660
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x3c]
call fcn.00434660
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x5c]
call fcn.00434660
jmp 0x439088
push 0x4453e4
lea ecx, [ebp - 0xa8]
call fcn.00434920
lea ecx, [ebp - 0xa8]
push ecx
lea ecx, [ebp - 0x3c]
call fcn.004345a0
mov byte [ebp - 0x95], al
lea ecx, [ebp - 0xa8]
call fcn.00434660
movzx edx, byte [ebp - 0x95]
test edx, edx
je 0x438f28
lea eax, [ebp - 0x4c]
push eax
mov ecx, 0x44ece0
call fcn.00434c00
jmp 0x439020
push str.name
lea ecx, [ebp - 0xbc]
call fcn.00434920
lea ecx, [ebp - 0xbc]
push ecx
lea ecx, [ebp - 0x3c]
call fcn.004345a0
mov byte [ebp - 0xa9], al
lea ecx, [ebp - 0xbc]
call fcn.00434660
movzx edx, byte [ebp - 0xa9]
test edx, edx
je 0x438f76
lea eax, [ebp - 0x4c]
push eax
mov ecx, 0x44ecd0
call fcn.00434c00
jmp 0x439020
push 0x4453fc
lea ecx, [ebp - 0xd0]
call fcn.00434920
lea ecx, [ebp - 0xd0]
push ecx
lea ecx, [ebp - 0x3c]
call fcn.004345a0
mov byte [ebp - 0xbd], al
lea ecx, [ebp - 0xd0]
call fcn.00434660
movzx edx, byte [ebp - 0xbd]
test edx, edx
je 0x438fd7
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0xd4], esp
lea eax, [ebp - 0x4c]
push eax
call fcn.004348d0
mov dword [ebp - 0x100], eax
mov ecx, 0x44ecf0
call fcn.0043c4d0
jmp 0x439020
push 0x445404
lea ecx, [ebp - 0xe8]
call fcn.00434920
lea ecx, [ebp - 0xe8]
push ecx
lea ecx, [ebp - 0x3c]
call fcn.004345a0
mov byte [ebp - 0xd5], al
lea ecx, [ebp - 0xe8]
call fcn.00434660
movzx edx, byte [ebp - 0xd5]
test edx, edx
je 0x439020
lea eax, [ebp - 0x4c]
push eax
mov ecx, 0x44ecc0
call fcn.00434c00
mov ecx, dword [ebp - 0x14]
movsx edx, byte [ecx]
test edx, edx
je 0x43903e
mov eax, dword [ebp - 0x14]
add eax, 1
mov dword [ebp - 0x14], eax
mov ecx, dword [ebp - 0x2c]
add ecx, 1
mov dword [ebp - 0x2c], ecx
jmp 0x439020
mov edx, dword [ebp - 0x14]
movsx eax, byte [edx]
test eax, eax
jne 0x43905c
mov ecx, dword [ebp - 0x14]
add ecx, 1
mov dword [ebp - 0x14], ecx
mov edx, dword [ebp - 0x2c]
add edx, 1
mov dword [ebp - 0x2c], edx
jmp 0x43903e
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x4c]
call fcn.00434660
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x3c]
call fcn.00434660
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x5c]
call fcn.00434660
jmp 0x438da5
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0xec], eax
mov ecx, dword [ebp - 0xec]
push ecx
call fcn.00403ca1
add esp, 4
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
mov esp, ebp
pop ebp
ret