Function at 0x100046e0
Capabilities:
Extract resource via kernel32 functions

Disassembly:
push ebp
lea ebp, [esp - 0x408]
sub esp, 0x408
push 0xffffffffffffffff
push 0x10030ec0
mov eax, dword fs:[0]
push eax
sub esp, 0x1c
mov eax, dword [0x10040020]
xor eax, ebp
mov dword [ebp + 0x404], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
mov edi, ecx
mov eax, dword [ebp + 0x414]
mov ecx, dword [ebp + 0x418]
mov ebx, dword [ebp + 0x410]
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x18], ecx
call dword [0x10040008]
xor esi, esi
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x14], esi
mov dword [ebp - 4], esi
mov dword [ebp - 0x24], edi
mov dword [ebp - 0x28], esi
mov dword [ebp], esi
cmp ebx, esi
mov byte [ebp - 4], 1
je 0x100047c0
push ebx
call dword [sym.imp.KERNEL32.dll_lstrlenW]
push esi
add eax, 1
cdq
push 2
push edx
push eax
call fcn.1001eb20
mov edi, eax
add eax, 0x80000000
adc edx, esi
test edx, edx
ja 0x100047c0
jb 0x10004781
cmp eax, 0xffffffff
ja 0x100047c0
cmp edi, 0x400
jg 0x100047a4
push edi
call fcn.10001dd0
add esp, 4
test al, al
je 0x100047a4
mov eax, edi
call fcn.1001ea00
mov dword [ebp - 0x10], esp
mov eax, esp
jmp 0x100047b0
push edi
lea ecx, [ebp - 0x14]
call fcn.10002270
mov esi, dword [ebp - 0x14]
mov edx, dword [ebp - 0x1c]
push edx
push edi
push ebx
push eax
call fcn.10001160
test eax, eax
jne 0x100047ef
lea eax, [ebp + 4]
cmp dword [ebp], eax
je 0x100047d0
lea ecx, [ebp]
call fcn.10001ce0
test esi, esi
je 0x100047e5
mov eax, esi
mov esi, dword [esi]
push eax
call fcn.1001de50
add esp, 4
test esi, esi
jne 0x100047d4
mov eax, 0x8007000e
jmp 0x10004909
push 2
push 0
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryExA]
mov ebx, eax
test ebx, ebx
mov dword [ebp - 0x1c], ebx
jne 0x1000480f
call fcn.10001380
mov edi, eax
jmp 0x100048e2
mov ecx, dword [ebp - 0x18]
mov edx, dword [ebp - 0x20]
push ecx
push edx
push ebx
call dword [sym.imp.KERNEL32.dll_FindResourceA]
mov edi, eax
test edi, edi
jne 0x1000482e
call fcn.10001380
jmp 0x100048d9
push edi
push ebx
call dword [sym.imp.KERNEL32.dll_LoadResource]
test eax, eax
mov dword [ebp - 0x18], eax
jne 0x10004847
call fcn.10001380
jmp 0x100048d9
push edi
push ebx
call dword [sym.imp.KERNEL32.dll_SizeofResource]
mov edi, eax
lea eax, [edi + 1]
cmp eax, edi
mov dword [ebp - 0x20], edi
jae 0x1000487d
lea eax, [ebp + 4]
cmp dword [ebp], eax
je 0x1000486b
lea ecx, [ebp]
call fcn.10001ce0
lea ecx, [ebp - 0x14]
call fcn.10001c70
mov eax, 0x8007000e
jmp 0x10004909
push eax
lea ecx, [ebp]
mov byte [ebp - 4], 2
call fcn.10002930
mov dword [ebp - 4], 1
jmp 0x100048a2
mov eax, dword [ebp]
test eax, eax
jne 0x100048b0
mov edi, 0x8007000e
jmp 0x100048db
mov ecx, dword [ebp - 0x18]
push edi
push ecx
push edi
push eax
call fcn.100012b0
mov edx, dword [ebp]
mov eax, dword [ebp + 0x41c]
add esp, 0x10
mov byte [edx + edi], 0
mov ecx, dword [ebp]
push eax
push ecx
lea ecx, [ebp - 0x28]
call fcn.10004180
mov edi, eax
push ebx
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
lea edx, [ebp + 4]
cmp dword [ebp], edx
je 0x100048f2
lea ecx, [ebp]
call fcn.10001ce0
test esi, esi
je 0x10004907
mov eax, esi
mov esi, dword [esi]
push eax
call fcn.1001de50
add esp, 4
test esi, esi
jne 0x100048f6
mov eax, edi
lea esp, [ebp - 0x38]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp + 0x404]
xor ecx, ebp
call fcn.1001dd14
add ebp, 0x408
mov esp, ebp
pop ebp
ret 0x10