Function at 0x401a02
Capabilities:
Extract resource via kernel32 functions

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x3c
mov dword [ebp - 4], 0
mov dword [ebp - 8], 0
mov dword [ebp - 0xc], 0
mov dword [ebp - 0x10], 0
push 8
call fcn.0048253b
add esp, 4
mov dword [ebp - 0x14], eax
mov edi, eax
mov esi, 0x4a4322
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x28], 0
push 0x80000101
push 0
push 0
push 1
mov ebx, 0x140
call fcn.00482ff0
add esp, 0x10
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x30], 0
push 0
push dword [ebp - 0x30]
lea eax, [ebp - 0x2c]
push eax
call fcn.00401772
mov dword [ebp - 0x34], eax
mov ebx, dword [ebp - 0x2c]
test ebx, ebx
je 0x401aae
push ebx
call fcn.00482541
add esp, 4
mov dword [ebp - 0x38], esp
mov eax, dword [ebp - 0x34]
test eax, eax
je 0x401abb
add eax, 8
push eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
nop
nop
nop
nop
cmp dword [ebp - 0x38], esp
je 0x401ad8
push 6
call fcn.0048254d
add esp, 4
mov dword [ebp - 0x3c], eax
mov ebx, dword [ebp - 0x34]
test ebx, ebx
je 0x401aeb
push ebx
call fcn.00482541
add esp, 4
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 4], eax
mov dword [ebp - 0x2c], esp
push 0xe
push 0x81
push dword [ebp - 4]
call dword [sym.imp.KERNEL32.dll_FindResourceA]
nop
nop
nop
nop
cmp dword [ebp - 0x2c], esp
je 0x401b1d
push 6
call fcn.0048254d
add esp, 4
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
jne 0x401b7b
mov eax, str.DEFAULT_ICON
mov dword [ebp - 0x2c], eax
lea eax, [ebp - 0x2c]
push eax
call fcn.0040190a
mov dword [ebp - 0x30], eax
mov ebx, dword [ebp - 0x2c]
test ebx, ebx
je 0x401b4e
push ebx
call fcn.00482541
add esp, 4
mov dword [ebp - 0x34], esp
push 0xe
push dword [ebp - 0x30]
push dword [ebp - 4]
call dword [sym.imp.KERNEL32.dll_FindResourceA]
nop
nop
nop
nop
cmp dword [ebp - 0x34], esp
je 0x401b78
push 6
call fcn.0048254d
add esp, 4
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
je 0x401eb6
mov dword [ebp - 0x2c], esp
push dword [ebp - 8]
push dword [ebp - 4]
call dword [sym.imp.KERNEL32.dll_LoadResource]
nop
nop
nop
nop
cmp dword [ebp - 0x2c], esp
je 0x401baa
push 6
call fcn.0048254d
add esp, 4
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0
je 0x401eb6
mov dword [ebp - 0x2c], esp
push dword [ebp - 0xc]
call dword [sym.imp.KERNEL32.dll_LockResource]
nop
nop
nop
nop
cmp dword [ebp - 0x2c], esp
je 0x401bd9
push 6
call fcn.0048254d
add esp, 4
mov dword [ebp - 0x10], eax
mov eax, 0x4a4312
push eax
push eax
mov ebx, eax
call fcn.004019e2
pop eax
sub ebx, eax
shl ecx, 2
add ecx, ebx
push ecx
call fcn.0048253b
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 0x14]
push ebx
call fcn.00482541
add esp, 4
pop eax
mov dword [ebp - 0x14], eax
xor ecx, ecx
lea eax, [ebp - 0x18]
mov ebx, eax
inc ecx
push ecx
push ebx
mov dword [ebx], ecx
cmp ecx, 2
jg 0x401e31
mov ebx, dword [ebp - 0x14]
call fcn.004019e2
push ebx
push ecx
mov eax, dword [ebp - 0x18]
dec eax
jns 0x401c41
push 4
call fcn.0048254d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x401c54
push 1
call fcn.0048254d
add esp, 4
shl eax, 2
add ebx, eax
mov dword [ebp - 0x2c], ebx
mov ebx, dword [ebp - 0x14]
call fcn.004019e2
push ebx
push ecx
mov eax, dword [ebp - 0x18]
dec eax
jns 0x401c79
push 4
call fcn.0048254d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x401c8c
push 1
call fcn.0048254d
add esp, 4
shl eax, 2
add ebx, eax
mov dword [ebp - 0x30], ebx
mov dword [ebp - 0x34], esp
push 0
mov ebx, dword [ebp - 0x30]
push dword [ebx]
mov ebx, dword [ebp - 0x2c]
push dword [ebx]
push 1
push dword [ebp - 0x10]
call dword [sym.imp.USER32.dll_LookupIconIdFromDirectoryEx]
nop
nop
nop
nop
cmp dword [ebp - 0x34], esp
je 0x401cca
push 6
call fcn.0048254d
add esp, 4
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x2c], esp
push 3
push dword [ebp - 0x1c]
push dword [ebp - 4]
call dword [sym.imp.KERNEL32.dll_FindResourceA]
nop
nop
nop
nop
cmp dword [ebp - 0x2c], esp
je 0x401cf7
push 6
call fcn.0048254d
add esp, 4
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0
je 0x401e2a
mov dword [ebp - 0x2c], esp
push dword [ebp - 0x20]
push dword [ebp - 4]
call dword [sym.imp.KERNEL32.dll_LoadResource]
nop
nop
nop
nop
cmp dword [ebp - 0x2c], esp
je 0x401d29
push 6
call fcn.0048254d
add esp, 4
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0
je 0x401e2a
mov dword [ebp - 0x2c], esp
push dword [ebp - 0x24]
call dword [sym.imp.KERNEL32.dll_LockResource]
nop
nop
nop
nop
cmp dword [ebp - 0x2c], esp
je 0x401d58
push 6
call fcn.0048254d
add esp, 4
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], 0
je 0x401e08
mov ebx, dword [ebp - 0x14]
call fcn.004019e2
push ebx
push ecx
mov eax, dword [ebp - 0x18]
dec eax
jns 0x401d82
push 4
call fcn.0048254d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x401d95
push 1
call fcn.0048254d
add esp, 4
shl eax, 2
add ebx, eax
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x30], esp
push dword [ebp - 0x20]
push dword [ebp - 4]
call dword [sym.imp.KERNEL32.dll_SizeofResource]
nop
nop
nop
nop
cmp dword [ebp - 0x30], esp
je 0x401dc2
push 6
call fcn.0048254d
add esp, 4
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x38], esp
push 0
push 0
push 0
push 0x30000
push 1
push dword [ebp - 0x34]
push dword [ebp - 0x28]
call dword [sym.imp.USER32.dll_CreateIconFromResourceEx]
nop
nop
nop
nop
cmp dword [ebp - 0x38], esp
je 0x401e03
push 6
call fcn.0048254d
add esp, 4
mov ebx, dword [ebp - 0x2c]
mov dword [ebx], eax
mov dword [ebp - 0x2c], esp
push dword [ebp - 0x24]
call dword [sym.imp.KERNEL32.dll_FreeResource]
nop
nop
nop
nop
cmp dword [ebp - 0x2c], esp
je 0x401e2a
push 6
call fcn.0048254d
add esp, 4
pop ebx
pop ecx
jmp 0x401c16
add esp, 8
mov ebx, dword [ebp - 0x14]
call fcn.004019e2
mov eax, 0
cmp eax, ecx
jl 0x401e52
push 1
call fcn.0048254d
add esp, 4
shl eax, 2
add ebx, eax
mov dword [ebp - 0x2c], ebx
mov ebx, dword [ebp - 0x2c]
mov eax, dword [ebx]
mov dword [0x516847], eax
mov ebx, dword [ebp - 0x14]
call fcn.004019e2
mov eax, 1
cmp eax, ecx
jl 0x401e82
push 1
call fcn.0048254d
add esp, 4
shl eax, 2
add ebx, eax
mov dword [ebp - 0x2c], ebx
mov ebx, dword [ebp - 0x2c]
mov eax, dword [ebx]
mov dword [0x51684b], eax
mov dword [ebp - 0x2c], esp
push dword [ebp - 0xc]
call dword [sym.imp.KERNEL32.dll_FreeResource]
nop
nop
nop
nop
cmp dword [ebp - 0x2c], esp
je 0x401eb6
push 6
call fcn.0048254d
add esp, 4
mov ebx, dword [ebp - 0x14]
push ebx
call fcn.00482541
add esp, 4
mov esp, ebp
pop ebp
ret