Function at 0x495bc0
Capabilities:
Extract resource via kernel32 functions

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x100c
call fcn.004f33a0
push ebx
push esi
push edi
mov edi, dword [ebp + 8]
test edi, edi
mov dword [ebp - 4], ecx
mov dword [ebp - 8], 0
jne 0x495be5
xor eax, eax
jmp 0x495c06
push edi
call dword [sym.imp.KERNEL32.dll_lstrlenW]
lea esi, [eax + eax + 2]
mov eax, esi
add eax, 3
and al, 0xfc
call fcn.004f33a0
mov eax, esp
push esi
push edi
push eax
call fcn.005082f8
push 2
push 0
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryExA]
mov ebx, eax
test ebx, ebx
mov dword [ebp - 0xc], ebx
jne 0x495c52
mov esi, dword [sym.imp.KERNEL32.dll_GetLastError]
call esi
test eax, eax
jg 0x495c37
call esi
lea esp, [ebp - 0x1018]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x10
call esi
and eax, 0xffff
or eax, 0x80070000
lea esp, [ebp - 0x1018]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x10
mov eax, dword [ebp + 0x10]
mov ecx, dword [ebp + 0xc]
push eax
push ecx
push ebx
call dword [sym.imp.KERNEL32.dll_FindResourceA]
mov edi, eax
test edi, edi
jne 0x495c91
mov esi, dword [sym.imp.KERNEL32.dll_GetLastError]
call esi
test eax, eax
jg 0x495c7c
call esi
mov esi, eax
jmp 0x495eac
call esi
mov esi, eax
and esi, 0xffff
or esi, 0x80070000
jmp 0x495eac
push edi
push ebx
call dword [sym.imp.KERNEL32.dll_LoadResource]
mov esi, eax
test esi, esi
je 0x495c67
push edi
push ebx
call dword [sym.imp.KERNEL32.dll_SizeofResource]
mov ebx, eax
mov eax, esi
cmp byte [ebx + esi], 0
je 0x495cd8
lea edi, [ebx + 1]
mov eax, edi
add eax, 3
and al, 0xfc
call fcn.004f33a0
mov ecx, edi
mov eax, esp
mov edx, ecx
mov edi, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov byte [eax + ebx], 0
lea ecx, [ebp + 8]
push ecx
push eax
lea ecx, [ebp - 8]
call fcn.00496110
mov esi, eax
test esi, esi
jl 0x495ea9
mov eax, dword [ebp + 8]
mov dword [ebp - 8], eax
cmp byte [eax], 0
je 0x495e9f
lea ecx, [ebp - 8]
lea esi, [ebp - 0x100c]
call fcn.00495f60
mov ecx, dword [ebp - 8]
mov al, byte [ecx]
test al, al
je 0x495dde
cmp al, 0x27
jne 0x495d84
mov ebx, dword [sym.imp.USER32.dll_CharNextA]
push ecx
call ebx
mov dword [ebp - 8], eax
mov cl, byte [eax]
test cl, cl
je 0x495dde
lea ecx, [ebp - 8]
call fcn.00495ef0
test eax, eax
mov eax, dword [ebp - 8]
jne 0x495d74
cmp byte [eax], 0x27
jne 0x495d4d
push eax
call ebx
mov dword [ebp - 8], eax
push eax
mov edi, eax
call ebx
lea edx, [esi + 2]
lea ecx, [ebp - 0xc]
cmp edx, ecx
mov dword [ebp - 8], eax
jae 0x495dde
cmp edi, eax
jae 0x495d6f
mov ecx, edi
mov dl, byte [ecx]
inc ecx
mov byte [esi], dl
inc esi
cmp ecx, eax
jb 0x495d65
cmp byte [eax], 0
jne 0x495d33
cmp byte [eax], 0
je 0x495dde
push eax
mov byte [esi], 0
call ebx
mov dword [ebp - 8], eax
jmp 0x495dbd
push eax
lea ecx, [ebp - 8]
call fcn.00495f10
test eax, eax
jne 0x495db4
mov edi, dword [ebp - 8]
push edi
call dword [sym.imp.USER32.dll_CharNextA]
cmp edi, eax
mov dword [ebp - 8], eax
jae 0x495dae
mov ecx, edi
mov dl, byte [ecx]
inc ecx
mov byte [esi], dl
inc esi
cmp ecx, eax
jb 0x495da4
mov al, byte [eax]
test al, al
jne 0x495d84
mov ebx, dword [sym.imp.USER32.dll_CharNextA]
mov byte [esi], 0
xor esi, esi
mov eax, dword [esi*8 + 0x536ef0]
lea ecx, [ebp - 0x100c]
push eax
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcmpiA]
test eax, eax
je 0x495de8
inc esi
cmp esi, 0xe
jb 0x495dbf
mov esi, 0x80020009
jmp 0x495e9f
mov edi, dword [esi*8 + 0x536ef4]
test edi, edi
je 0x495dde
lea edx, [ebp - 0x100c]
lea ecx, [ebp - 8]
push edx
call fcn.00495fb0
mov esi, eax
test esi, esi
jl 0x495e9f
cmp byte [ebp - 0x100c], 0x7b
jne 0x495dde
mov eax, dword [ebp + 0x14]
push 0
test eax, eax
je 0x495e40
mov ebx, dword [ebp - 8]
push eax
lea eax, [ebp - 0x100c]
push edi
push eax
lea ecx, [ebp - 8]
call fcn.00496460
mov esi, eax
test esi, esi
jl 0x495e88
mov ebx, dword [sym.imp.USER32.dll_CharNextA]
jmp 0x495e58
push 0
lea ecx, [ebp - 0x100c]
push edi
push ecx
lea ecx, [ebp - 8]
call fcn.00496460
mov esi, eax
test esi, esi
jl 0x495e9f
mov eax, dword [ebp - 8]
movsx ecx, byte [eax]
add ecx, 0xfffffff7
cmp ecx, 0x17
ja case.0x495e6e.10
xor edx, edx
mov dl, byte [ecx + 0x495ecc]
jmp dword [edx*4 + 0x495ec4]
push eax
call ebx
mov dword [ebp - 8], eax
jmp 0x495e5b
cmp byte [eax], 0
jne 0x495cfe
jmp 0x495e9f
push 0
push 0
lea eax, [ebp - 0x100c]
push edi
push eax
lea ecx, [ebp - 8]
mov dword [ebp - 8], ebx
call fcn.00496460
mov ecx, dword [ebp + 8]
push ecx
call dword [sym.imp.ole32.dll_CoTaskMemFree]
mov ebx, dword [ebp - 0xc]
push ebx
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov eax, esi
lea esp, [ebp - 0x1018]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x10