Function at 0x40b9b0
Capabilities:
Extract resource via kernel32 functions

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4a1cd0
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x140
push ebx
push esi
mov edx, ecx
push edi
mov edi, dword [ebp + 0xc]
mov ecx, 0xf2
xor eax, eax
xor esi, esi
rep stosd dword es:[edi], eax
mov eax, dword [edx + 4]
mov dword [ebp - 0x10], esp
cmp eax, esi
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x14], 1
mov dword [ebp - 0x18], esi
mov dword [ebp - 4], esi
je 0x40ba0a
mov eax, dword [ebp + 8]
push 2
push esi
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryExW]
jmp 0x40ba68
mov ecx, 0x40
xor eax, eax
lea edi, [ebp - 0x14b]
mov byte [ebp - 0x14c], 0
rep stosd dword es:[edi], eax
mov edx, dword [ebp + 8]
lea ecx, [ebp - 0x14c]
stosw word es:[edi], ax
push 0x104
push ecx
push 0xffffffffffffffff
push edx
stosb byte es:[edi], al
call fcn.00408770
add esp, 0x10
cmp eax, esi
jne 0x40ba58
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x40], eax
lea eax, [ebp - 0x40]
push 0x4b35c8
push eax
call fcn.0041ec39
push 2
lea ecx, [ebp - 0x14c]
push esi
push ecx
call dword [sym.imp.KERNEL32.dll_LoadLibraryExA]
mov ebx, eax
cmp ebx, esi
mov dword [ebp - 0x18], ebx
jne 0x40ba88
call dword [sym.imp.KERNEL32.dll_GetLastError]
lea edx, [ebp - 0x44]
push 0x4b35c8
push edx
mov dword [ebp - 0x44], eax
call fcn.0041ec39
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x1c], esi
push eax
push 0x40be50
push 1
push 0x10
push ebx
call dword [sym.imp.KERNEL32.dll_EnumResourceLanguagesW]
mov ecx, dword [ebp - 0x1c]
push ecx
push 1
push 0x10
push ebx
call dword [sym.imp.KERNEL32.dll_FindResourceExW]
mov esi, eax
test esi, esi
jne 0x40baf8
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x714
je 0x40bad9
cmp eax, 0x715
je 0x40bad9
lea edx, [ebp - 0x30]
push 0x4b35c8
push edx
mov dword [ebp - 0x30], eax
call fcn.0041ec39
push ebx
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov eax, 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8
push esi
push ebx
call dword [sym.imp.KERNEL32.dll_SizeofResource]
push esi
push ebx
mov edi, eax
call dword [sym.imp.KERNEL32.dll_LoadResource]
test eax, eax
jne 0x40bb25
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x24], eax
lea eax, [ebp - 0x24]
push 0x4b35c8
push eax
call fcn.0041ec39
push eax
call dword [sym.imp.KERNEL32.dll_LockResource]
mov esi, eax
test esi, esi
jne 0x40bb49
call dword [sym.imp.KERNEL32.dll_GetLastError]
lea ecx, [ebp - 0x38]
push 0x4b35c8
push ecx
mov dword [ebp - 0x38], eax
call fcn.0041ec39
lea ebx, [esi + edi]
mov ecx, esi
push ebx
call fcn.0040bf30
test eax, eax
jne 0x40bb6d
lea edx, [ebp - 0x28]
push 0x4b2208
push edx
mov dword [ebp - 0x28], 0xffffffff
call fcn.0041ec39
push ebx
mov ecx, esi
call fcn.0040beb0
cmp word [esi + 2], 0xc
jb 0x40bb84
mov edx, dword [ebp + 0xc]
mov ecx, dword [eax + 8]
mov dword [edx], ecx
cmp word [esi + 2], 0x10
jb 0x40bb94
mov ecx, dword [ebp + 0xc]
mov eax, dword [eax + 0xc]
mov dword [ecx + 4], eax
push ebx
mov ecx, esi
call fcn.0040bf10
mov esi, eax
push ebx
mov ecx, esi
call fcn.0040bfd0
test eax, eax
jne 0x40bbbf
lea edx, [ebp - 0x2c]
push 0x4b2208
push edx
mov dword [ebp - 0x2c], 0xffffffff
call fcn.0041ec39
mov ecx, esi
call fcn.0040bf90
push 0x4c1394
push eax
call fcn.0041ee4b
add esp, 8
test eax, eax
jne 0x40be2c
push ebx
mov ecx, esi
call fcn.0040bfa0
mov esi, eax
push ebx
mov ecx, esi
call fcn.0040c060
test eax, eax
jne 0x40bc07
lea eax, [ebp - 0x34]
push 0x4b2208
push eax
mov dword [ebp - 0x34], 0xffffffff
call fcn.0041ec39
push ebx
mov ecx, esi
call fcn.0040c030
mov edi, eax
push ebx
mov ecx, edi
call fcn.0040c130
test eax, eax
jne 0x40bc32
lea ecx, [ebp - 0x3c]
push 0x4b2208
push ecx
mov dword [ebp - 0x3c], 0xffffffff
call fcn.0041ec39
xor eax, eax
mov ax, word [esi]
mov dword [ebp + 8], eax
test eax, eax
jle 0x40be2c
push ebx
mov ecx, edi
call fcn.0040c130
test eax, eax
je 0x40be2c
push ebx
mov ecx, edi
call fcn.0040c0f0
and eax, 0xffff
mov ecx, edi
mov esi, eax
call fcn.0040c0b0
push str.CompanyName
push eax
call fcn.0041ee4b
add esp, 8
test eax, eax
jne 0x40bca1
test esi, esi
jbe 0x40bca1
cmp esi, 0x50
jb 0x40bc88
mov esi, 0x4f
push ebx
mov ecx, edi
call fcn.0040c0c0
mov edx, dword [ebp + 0xc]
push esi
add edx, 0x288
push eax
push edx
jmp 0x40bdd1
mov ecx, edi
call fcn.0040c0b0
push 0x4c135c
push eax
call fcn.0041ee4b
add esp, 8
test eax, eax
jne 0x40bcde
test esi, esi
jbe 0x40bcde
cmp esi, 0x50
jb 0x40bcc8
mov esi, 0x4f
push ebx
mov ecx, edi
call fcn.0040c0c0
push esi
push eax
mov eax, dword [ebp + 0xc]
add eax, 8
push eax
jmp 0x40bdd1
mov ecx, edi
call fcn.0040c0b0
push 0x4c1340
push eax
call fcn.0041ee4b
add esp, 8
test eax, eax
jne 0x40bd1d
test esi, esi
jbe 0x40bd1d
cmp esi, 0x50
jb 0x40bd05
mov esi, 0x4f
push ebx
mov ecx, edi
call fcn.0040c0c0
mov ecx, dword [ebp + 0xc]
push esi
push eax
add ecx, 0x148
jmp 0x40bdd0
mov ecx, edi
call fcn.0040c0b0
push str.LegalCopyright
push eax
call fcn.0041ee4b
add esp, 8
test eax, eax
jne 0x40bd5a
test esi, esi
jbe 0x40bd5a
cmp esi, 0x50
jb 0x40bd44
mov esi, 0x4f
push ebx
mov ecx, edi
call fcn.0040c0c0
mov edx, dword [ebp + 0xc]
push esi
add edx, 0x328
push eax
push edx
jmp 0x40bdd1
mov ecx, edi
call fcn.0040c0b0
push 0x4c12fc
push eax
call fcn.0041ee4b
add esp, 8
test eax, eax
jne 0x40bd96
test esi, esi
jbe 0x40bd96
cmp esi, 0x50
jb 0x40bd81
mov esi, 0x4f
push ebx
mov ecx, edi
call fcn.0040c0c0
push esi
push eax
mov eax, dword [ebp + 0xc]
add eax, 0xa8
push eax
jmp 0x40bdd1
mov ecx, edi
call fcn.0040c0b0
push 0x4c12e4
push eax
call fcn.0041ee4b
add esp, 8
test eax, eax
jne 0x40bdd9
test esi, esi
jbe 0x40bdd9
cmp esi, 0x50
jb 0x40bdbd
mov esi, 0x4f
push ebx
mov ecx, edi
call fcn.0040c0c0
mov ecx, dword [ebp + 0xc]
push esi
push eax
add ecx, 0x1e8
push ecx
call fcn.0041f101
add esp, 0xc
mov eax, dword [ebp + 8]
xor edx, edx
mov dx, word [edi]
mov ecx, edi
add edx, 3
and edx, 0xfffffffc
sub eax, edx
mov dword [ebp + 8], eax
call fcn.0040c120
mov edi, eax
mov eax, dword [ebp + 8]
jmp 0x40bc3a
mov eax, dword [ebp - 0x18]
test eax, eax
je 0x40be3a
push eax
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov ecx, dword [ebp - 0xc]
mov eax, dword [ebp - 0x14]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret 8