Function at 0x1006e9b0
Capabilities:
Extract resource via kernel32 functions
Get file size
Read file on windows

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x101096b9
mov eax, dword fs:[0]
push eax
sub esp, 0x810
mov eax, dword [0x1014b520]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, dword [ebp + 8]
lea ecx, [ebp - 0x5a8]
push 0xffffffffffffffff
push dword [ebp + 0xc]
mov dword [ebp - 0x7e8], eax
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0x7ec], eax
call fcn.10053980
push 4
lea eax, [ebp - 0x524]
mov dword [ebp - 4], 0
push eax
lea ecx, [ebp - 0x5a8]
call fcn.100551b0
mov ecx, eax
mov byte [ebp - 4], 1
call fcn.10053db0
push eax
push str..ico
call fcn.100da91e
add esp, 8
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x524]
mov esi, eax
call fcn.1001fc60
test esi, esi
jne 0x1006ec8f
xor eax, eax
push 0x200
push eax
mov dword [ebp - 0x18], eax
mov word [ebp - 0x14], ax
lea eax, [ebp - 0x7a8]
push eax
call fcn.100d6e30
push 0x200
lea eax, [ebp - 0x420]
push esi
push eax
call fcn.100d6e30
push 0x200
lea eax, [ebp - 0x220]
push esi
push eax
call fcn.100d6e30
push 0x100
lea eax, [ebp - 0x220]
push eax
push 0x100
lea eax, [ebp - 0x420]
push eax
push 0x100
lea eax, [ebp - 0x7a8]
push eax
push 3
lea eax, [ebp - 0x18]
push eax
push dword [ebp + 0xc]
call fcn.100ed9fc
add esp, 0x48
lea eax, [ebp - 0x220]
push str..ico
push eax
call fcn.100da91e
add esp, 8
test eax, eax
jne 0x1006ec8f
lea ecx, [ebp - 0x524]
call fcn.100539b0
mov byte [ebp - 4], 2
lea eax, [ebp - 0x18]
mov ecx, 0x1010e2cc
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x1006eb19
test dx, dx
je 0x1006eb15
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x1006eb19
add eax, 4
add ecx, 4
test dx, dx
jne 0x1006eaf3
xor eax, eax
jmp 0x1006eb1e
sbb eax, eax
or eax, 1
test eax, eax
jne 0x1006eb33
call fcn.10059720
push eax
lea ecx, [ebp - 0x524]
call fcn.10053bc0
push dword [ebp + 0xc]
lea ecx, [ebp - 0x524]
call fcn.10053eb0
push 0x50
push 0
push 0
push 1
lea ecx, [ebp - 0x524]
call fcn.10053db0
push eax
push 0
call dword [sym.imp.USER32.dll_LoadImageW]
mov edi, eax
mov dword [ebp - 0x7c8], edi
test edi, edi
je 0x1006ec80
push 0x98
call fcn.100bb0a7
mov esi, eax
add esp, 4
mov dword [ebp - 0x7f0], esi
mov byte [ebp - 4], 3
test esi, esi
je 0x1006eb94
lea ecx, [esi + 0x10]
call fcn.100539b0
jmp 0x1006eb96
xor esi, esi
lea eax, [ebp - 0x434]
push eax
push edi
call dword [sym.imp.USER32.dll_GetIconInfo]
test eax, eax
jne 0x1006ebaf
xor edi, edi
jmp 0x1006ec61
mov eax, dword [ebp - 0x430]
push 0
lea edi, [eax + eax]
mov eax, dword [ebp - 0x42c]
add eax, eax
mov dword [ebp - 0x7d0], edi
mov dword [ebp - 0x7e8], eax
mov dword [esi + 4], edi
mov dword [esi + 8], eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
mov dword [ebp - 0x7ec], eax
call dword [sym.imp.GDI32.dll_CreateCompatibleDC]
push dword [ebp - 0x7e8]
mov dword [ebp - 0x7e4], eax
push edi
push dword [ebp - 0x7ec]
call dword [sym.imp.GDI32.dll_CreateCompatibleBitmap]
mov edi, eax
test edi, edi
je 0x1006eba8
push edi
push dword [ebp - 0x7e4]
call dword [sym.imp.GDI32.dll_SelectObject]
push 3
push 0
push 0
push dword [ebp - 0x7e8]
push dword [ebp - 0x7d0]
push dword [ebp - 0x7c8]
push 0
push 0
push dword [ebp - 0x7e4]
call dword [sym.imp.USER32.dll_DrawIconEx]
push dword [ebp - 0x7e4]
call dword [sym.imp.GDI32.dll_DeleteDC]
push dword [ebp - 0x7ec]
push 0
call dword [sym.imp.USER32.dll_ReleaseDC]
push dword [ebp - 0x7c8]
call dword [sym.imp.USER32.dll_DestroyIcon]
mov eax, dword [ebp + 0x14]
lea ecx, [ebp - 0x524]
mov dword [esi], edi
mov byte [esi + 0xc], 1
mov dword [esi + 0x94], eax
call fcn.1001fc60
jmp 0x1006f705
lea ecx, [ebp - 0x524]
mov byte [ebp - 4], 0
call fcn.1001fc60
mov eax, dword [ebp - 0x7ec]
mov edi, dword [sym.imp.KERNEL32.dll_CloseHandle]
mov esi, dword [sym.imp.KERNEL32.dll_CreateFileW]
mov dword [ebp - 0x7cc], 0
mov dword [ebp - 0x7d4], 0
test eax, eax
jne 0x1006ef8d
call fcn.10059720
push eax
lea ecx, [ebp - 0x524]
call fcn.100538c0
mov byte [ebp - 4], 4
call fcn.10059730
mov ecx, eax
call fcn.10054910
test al, al
je 0x1006edcf
push dword [ebp + 0xc]
lea ecx, [ebp - 0x524]
call fcn.10053eb0
push 0
push 0x80
push 3
push 0
push 1
push SysReAllocStringLen
lea ecx, [ebp - 0x524]
call fcn.10053db0
push eax
call esi
mov esi, eax
cmp esi, 0xffffffff
jne 0x1006ed2f
lea ecx, [ebp - 0x524]
mov byte [ebp - 4], 0
call fcn.1001fc60
jmp 0x1006f00d
push 0
push esi
call dword [sym.imp.KERNEL32.dll_GetFileSize]
mov dword [ebp - 0x7d4], eax
test eax, eax
jne 0x1006ed59
push esi
call edi
lea ecx, [ebp - 0x524]
mov byte [ebp - 4], 0
call fcn.1001fc60
jmp 0x1006f00d
push 0x1014ff74
push eax
mov dword [ebp - 0x7c8], 0
call fcn.100bb434
add esp, 8
mov dword [ebp - 0x7cc], eax
lea ecx, [ebp - 0x7c8]
push 0
push ecx
push dword [ebp - 0x7d4]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_ReadFile]
push esi
call edi
mov eax, dword [ebp - 0x7c8]
cmp eax, dword [ebp - 0x7d4]
je 0x1006ed1b
push dword [ebp - 0x7cc]
call fcn.100bad0b
add esp, 4
lea ecx, [ebp - 0x524]
mov dword [ebp - 0x7cc], 0
mov byte [ebp - 4], 0
call fcn.1001fc60
jmp 0x1006f00d
call fcn.10059730
push eax
lea ecx, [ebp - 0x524]
call fcn.10053e90
call fcn.10059950
test al, al
je 0x1006ef4c
call fcn.10059740
mov esi, eax
test esi, esi
jne 0x1006ee0b
lea ecx, [ebp - 0x524]
mov byte [ebp - 4], al
call fcn.1001fc60
jmp 0x1006f00d
xor eax, eax
mov dword [ebp - 0x428], 0
mov word [ebp - 0x438], ax
mov eax, dword [ebp + 0xc]
mov edx, eax
mov dword [ebp - 0x424], 7
lea ecx, [edx + 2]
mov dword [ebp - 0x7d0], ecx
mov cx, word [edx]
add edx, 2
test cx, cx
jne 0x1006ee36
sub edx, dword [ebp - 0x7d0]
lea ecx, [ebp - 0x438]
sar edx, 1
push edx
push eax
call fcn.1000f230
lea eax, [ebp - 0x7c0]
mov byte [ebp - 4], 5
push eax
lea eax, [ebp - 0x7c8]
push eax
lea eax, [ebp - 0x438]
push eax
push esi
call fcn.100d2d80
mov edx, dword [ebp - 0x424]
add esp, 0x10
test eax, eax
mov byte [ebp - 4], 4
sete al
mov byte [ebp - 0x7c1], al
cmp edx, 8
jb 0x1006eecd
mov ecx, dword [ebp - 0x438]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x1006eebd
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1006f72d
push edx
push ecx
call fcn.100bacf4
mov al, byte [ebp - 0x7c1]
add esp, 8
test al, al
je 0x1006eee5
lea ecx, [ebp - 0x524]
mov byte [ebp - 4], 0
call fcn.1001fc60
jmp 0x1006f00d
mov eax, dword [ebp - 0x5ac]
mov dword [ebp - 0x7d4], eax
test eax, eax
jne 0x1006ef08
lea ecx, [ebp - 0x524]
mov byte [ebp - 4], al
call fcn.1001fc60
jmp 0x1006f00d
push 0x1014ff74
push eax
call fcn.100bb434
push dword [ebp - 0x7d4]
mov dword [ebp - 0x7cc], eax
push eax
push dword [ebp - 0x7c8]
push esi
call fcn.100d2ad0
add esp, 0x18
test eax, eax
jne 0x1006ed1b
push 1
push dword [ebp - 0x7cc]
call fcn.100bacf4
add esp, 8
jmp 0x1006edb1
lea eax, [ebp - 0x7d4]
push eax
lea eax, [ebp - 0x7cc]
push eax
push dword [ebp + 0xc]
lea ecx, [ebp - 0x524]
call fcn.10053db0
push eax
call fcn.100d2fb0
add esp, 0x10
test eax, eax
jns 0x1006ed1b
lea ecx, [ebp - 0x524]
mov byte [ebp - 4], 0
call fcn.1001fc60
jmp 0x1006f013
push eax
push dword [ebp + 0xc]
call fcn.10059710
push eax
call dword [sym.imp.KERNEL32.dll_FindResourceW]
mov esi, eax
test esi, esi
je 0x1006f00d
push esi
call fcn.10059710
push eax
call dword [sym.imp.KERNEL32.dll_LoadResource]
mov dword [ebp - 0x7d0], eax
push esi
test eax, eax
je 0x1006f007
call fcn.10059710
push eax
call dword [sym.imp.KERNEL32.dll_SizeofResource]
mov dword [ebp - 0x7d4], eax
test eax, eax
je 0x1006f00d
push 0x1014ff74
push eax
call fcn.100bb434
add esp, 8
mov dword [ebp - 0x7cc], eax
push dword [ebp - 0x7d4]
push dword [ebp - 0x7d0]
call dword [sym.imp.KERNEL32.dll_LockResource]
push eax
push dword [ebp - 0x7cc]
call fcn.100d6330
add esp, 0xc
push esi
call dword [sym.imp.KERNEL32.dll_FreeResource]
mov esi, dword [sym.imp.KERNEL32.dll_CreateFileW]
mov eax, dword [ebp - 0x7cc]
test eax, eax
jne 0x1006f061
push eax
push 0x80
push 3
push eax
push 1
push SysReAllocStringLen
push dword [ebp + 0xc]
call esi
mov esi, eax
cmp esi, 0xffffffff
je 0x1006f053
push 0
push esi
call dword [sym.imp.KERNEL32.dll_GetFileSize]
mov dword [ebp - 0x7d4], eax
test eax, eax
jne 0x1006f1ec
push esi
call edi
mov eax, dword [ebp - 0x7cc]
test eax, eax
je 0x1006f48d
push 4
lea ecx, [ebp - 0x7f4]
push ecx
lea ecx, [ebp - 0x7e0]
push ecx
lea ecx, [ebp - 0x7dc]
push ecx
push dword [ebp - 0x7d4]
push eax
call fcn.100b56d0
push dword [ebp - 0x7cc]
mov edi, eax
call fcn.100bad0b
add esp, 0x1c
test edi, edi
je 0x1006f48d
mov eax, dword [ebp - 0x7e0]
xorps xmm0, xmm0
mov edx, dword [ebp - 0x7dc]
neg eax
push 0
push 0
mov dword [ebp - 0x46c], eax
lea eax, [ebp - 0x7d8]
mov dword [ebp - 0x470], edx
imul edx, dword [ebp - 0x7e0]
push eax
push 0
lea eax, [ebp - 0x474]
movlpd qword [ebp - 0x45c], xmm0
push eax
shl edx, 2
push 0
movlpd qword [ebp - 0x454], xmm0
mov dword [ebp - 0x44c], 0
mov dword [ebp - 0x474], 0x28
mov dword [ebp - 0x468], 0x200001
mov dword [ebp - 0x464], 0
mov dword [ebp - 0x460], edx
mov byte [ebp - 0x7c1], 0
mov dword [ebp - 0x7d8], 0
call dword [sym.imp.GDI32.dll_CreateDIBSection]
xor esi, esi
mov dword [ebp - 0x7e4], eax
test eax, eax
je 0x1006f705
mov eax, dword [ebp - 0x7dc]
imul eax, dword [ebp - 0x7e0]
test eax, eax
jle 0x1006f2c9
nop dword [eax]
nop word [eax + eax]
mov eax, dword [ebp - 0x7d8]
mov cl, byte [edi + esi*4 + 3]
mov byte [eax + esi*4 + 3], cl
mov ecx, dword [ebp - 0x7d8]
cmp byte [ecx + esi*4 + 3], 0xff
jae 0x1006f255
movzx eax, byte [edi + esi*4 + 3]
movzx ecx, byte [edi + esi*4 + 2]
imul ecx, eax
mov eax, 0x80808081
mov byte [ebp - 0x7c1], 1
mul ecx
mov eax, dword [ebp - 0x7d8]
shr edx, 7
mov byte [eax + esi*4], dl
movzx eax, byte [edi + esi*4 + 3]
movzx ecx, byte [edi + esi*4 + 1]
imul ecx, eax
mov eax, 0x80808081
mul ecx
mov eax, dword [ebp - 0x7d8]
shr edx, 7
mov byte [eax + esi*4 + 1], dl
movzx eax, byte [edi + esi*4 + 3]
movzx ecx, byte [edi + esi*4]
imul ecx, eax
mov eax, 0x80808081
mul ecx
mov eax, dword [ebp - 0x7d8]
shr edx, 7
mov byte [eax + esi*4 + 2], dl
jmp 0x1006f279
push 0x1014ff74
push eax
mov dword [ebp - 0x7c8], 0
call fcn.100bb434
add esp, 8
mov dword [ebp - 0x7cc], eax
lea ecx, [ebp - 0x7c8]
push 0
push ecx
push dword [ebp - 0x7d4]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_ReadFile]
push esi
call edi
mov eax, dword [ebp - 0x7c8]
cmp eax, dword [ebp - 0x7d4]
je 0x1006f053
push dword [ebp - 0x7cc]
call fcn.100bad0b
add esp, 4
mov dword [ebp - 0x7cc], 0
xor esi, esi
jmp 0x1006f705
mov al, byte [edi + esi*4 + 2]
mov byte [ecx + esi*4], al
mov eax, dword [ebp - 0x7d8]
movzx ecx, byte [edi + esi*4 + 1]
mov byte [eax + esi*4 + 1], cl
mov eax, dword [ebp - 0x7d8]
movzx ecx, byte [edi + esi*4]
mov byte [eax + esi*4 + 2], cl
mov eax, dword [ebp - 0x7d8]
mov ecx, dword [ebp + 0x14]
cmp dword [eax + esi*4], ecx
jne 0x1006f2b3
mov byte [eax + esi*4], 0
mov eax, dword [ebp - 0x7d8]
mov byte [ebp - 0x7c1], 1
mov byte [eax + esi*4 + 1], 0
mov eax, dword [ebp - 0x7d8]
mov byte [eax + esi*4 + 2], 0
mov eax, dword [ebp - 0x7d8]
mov byte [eax + esi*4 + 3], 0
mov eax, dword [ebp - 0x7dc]
inc esi
imul eax, dword [ebp - 0x7e0]
cmp esi, eax
jl 0x1006f160
push edi
call fcn.100b56c0
add esp, 4
lea ecx, [ebp - 0x5a8]
mov edi, 0x64
push 0
push 0x10119028
call fcn.100541d0
cmp eax, 0xffffffff
je 0x1006f32d
push 0xffffffffffffffff
inc eax
lea ecx, [ebp - 0x5a8]
push eax
lea eax, [ebp - 0x524]
push eax
call fcn.10054980
lea ecx, [ebp - 0x524]
mov byte [ebp - 4], 6
call fcn.10053db0
push eax
call fcn.100df52a
add esp, 4
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x524]
mov edi, eax
call fcn.1001fc60
mov eax, dword [ebp - 0x7e8]
mov esi, 0x64
test eax, eax
je 0x1006f34c
mov ecx, eax
call fcn.10058ec0
mov ecx, eax
call fcn.10063ca0
mov esi, eax
cmp edi, esi
je 0x1006f6b4
xorps xmm0, xmm0
xorps xmm1, xmm1
cvtsi2ss xmm0, edi
sub esp, 8
cvtsi2ss xmm1, esi
xorps xmm2, xmm2
divss xmm1, xmm0
cvtsi2ss xmm2, dword [ebp - 0x7e0]
xorps xmm0, xmm0
cvtsi2ss xmm0, dword [ebp - 0x7dc]
mulss xmm2, xmm1
mulss xmm0, xmm1
movss dword [ebp - 0x7d0], xmm2
cvtps2pd xmm0, xmm0
movsd qword [ebp - 0x18], xmm0
fld qword [ebp - 0x18]
fstp qword [esp]
call fcn.100edbf0
fstp qword [ebp - 0x18]
movsd xmm0, qword [ebp - 0x18]
cvtpd2ps xmm0, xmm0
cvttss2si edi, xmm0
movss xmm0, dword [ebp - 0x7d0]
cvtps2pd xmm0, xmm0
mov dword [ebp - 0x7dc], edi
movsd qword [ebp - 0x18], xmm0
fld qword [ebp - 0x18]
fstp qword [esp]
call fcn.100edbf0
fstp qword [ebp - 0x18]
movsd xmm0, qword [ebp - 0x18]
add esp, 8
cvtpd2ps xmm0, xmm0
cvttss2si eax, xmm0
mov dword [ebp - 0x7e0], eax
cmp esi, 0xc8
jle 0x1006f5e8
push 0
push 0
mov dword [ebp - 0x498], eax
xorps xmm0, xmm0
lea eax, [ebp - 0x7c8]
movlpd qword [ebp - 0x490], xmm0
push eax
push 0
lea eax, [ebp - 0x4a0]
movlpd qword [ebp - 0x488], xmm0
push eax
push 0
movlpd qword [ebp - 0x480], xmm0
mov dword [ebp - 0x478], 0
mov dword [ebp - 0x4a0], 0x28
mov dword [ebp - 0x49c], edi
mov dword [ebp - 0x494], 0x200001
mov dword [ebp - 0x7c8], 0
call dword [sym.imp.GDI32.dll_CreateDIBSection]
cmp dword [ebp - 0x7c8], 0
mov esi, eax
mov dword [ebp - 0x7f0], esi
je 0x1006f48d
push 0
call dword [sym.imp.GDI32.dll_CreateCompatibleDC]
mov dword [ebp - 0x7ec], eax
push esi
test eax, eax
jne 0x1006f494
call dword [sym.imp.GDI32.dll_DeleteObject]
xor esi, esi
jmp 0x1006f705
mov edi, dword [sym.imp.GDI32.dll_SelectObject]
push eax
call edi
lea ecx, [ebp - 0x81c]
mov esi, eax
call fcn.10067b50
push dword [ebp - 0x7e4]
lea ecx, [ebp - 0x81c]
mov byte [ebp - 4], 7
call fcn.1006dad0
mov eax, dword [ebp - 0x7dc]
lea ecx, [ebp - 0x81c]
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x7e0]
push 0
sub esp, 0x10
mov dword [ebp - 0x14], eax
mov eax, esp
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x1c], 0
movups xmm0, xmmword [ebp - 0x20]
push dword [ebp - 0x7ec]
movups xmmword [eax], xmm0
call fcn.10068770
push esi
mov esi, dword [ebp - 0x7ec]
push esi
call edi
push esi
call dword [sym.imp.GDI32.dll_DeleteDC]
push dword [ebp - 0x7e4]
call dword [sym.imp.GDI32.dll_DeleteObject]
lea ecx, [ebp - 0x448]
call fcn.10067b50
push dword [ebp - 0x7f0]
lea ecx, [ebp - 0x448]
mov byte [ebp - 4], 8
call fcn.1006dad0
mov dword [ebp - method.FCImageEffect.virtual_0], 0x10119010
push 0
lea eax, [ebp - 0x7d0]
mov byte [ebp - 4], 9
push eax
lea ecx, [ebp - 0x448]
call fcn.10067df0
push 0
push 0x20
lea ecx, [ebp - 0x448]
call fcn.10067f60
mov dword [ebp - method.FCImageEffect.virtual_0], 0x10118ff4
push 0
lea eax, [ebp - 0x7e8]
mov byte [ebp - 4], 0xa
push eax
lea ecx, [ebp - 0x448]
call fcn.10067df0
lea ecx, [ebp - 0x448]
call fcn.10068750
lea ecx, [ebp - 0x448]
mov dword [ebp - method.FCImageEffect.virtual_0], vtable.FCImageEffect.0
mov edi, eax
mov dword [ebp - method.FCImageEffect.virtual_0], vtable.FCImageEffect.0
mov dword [ebp - method.FCObjImage.virtual_0], vtable.FCObjImage.0
call fcn.100686e0
lea ecx, [ebp - 0x81c]
mov dword [ebp - method.FCObjGraph.virtual_0], vtable.FCObjGraph.0
mov dword [ebp - method.FCObjImage.virtual_0], vtable.FCObjImage.0
call fcn.100686e0
jmp 0x1006f6ba
lea ecx, [ebp - 0x448]
call fcn.10067b50
mov esi, dword [ebp - 0x7e4]
lea ecx, [ebp - 0x448]
push esi
mov byte [ebp - 4], 0xb
call fcn.1006dad0
push 0
push dword [ebp - 0x7e0]
lea ecx, [ebp - 0x448]
push dword [ebp - 0x7dc]
call fcn.1006f9c0
push esi
call dword [sym.imp.GDI32.dll_DeleteObject]
mov dword [ebp - method.FCImageEffect.virtual_0], 0x10119010
push 0
lea eax, [ebp - 0x7c8]
mov byte [ebp - 4], 0xc
push eax
lea ecx, [ebp - 0x448]
call fcn.10067df0
mov dword [ebp - method.FCImageEffect.virtual_0], 0x10118ff4
push 0
push 0x20
lea ecx, [ebp - 0x448]
mov byte [ebp - 4], 0xd
call fcn.10067f60
push 0
lea eax, [ebp - 0x7d0]
push eax
lea ecx, [ebp - 0x448]
call fcn.10067df0
lea ecx, [ebp - 0x448]
call fcn.10068750
lea ecx, [ebp - 0x448]
mov dword [ebp - method.FCImageEffect.virtual_0], vtable.FCImageEffect.0
mov edi, eax
mov dword [ebp - method.FCImageEffect.virtual_0], vtable.FCImageEffect.0
mov dword [ebp - method.FCObjImage.virtual_0], vtable.FCObjImage.0
call fcn.100686e0
jmp 0x1006f6ba
mov edi, dword [ebp - 0x7e4]
push 0x1014ff74
push 0x98
call fcn.100bb219
mov esi, eax
add esp, 8
mov dword [ebp - 0x7f0], esi
mov byte [ebp - 4], 0xe
test esi, esi
je 0x1006f6e6
lea ecx, [esi + 0x10]
call fcn.100539b0
jmp 0x1006f6e8
xor esi, esi
mov al, byte [ebp - 0x7c1]
mov dword [esi], edi
mov ecx, dword [ebp - 0x7dc]
mov dword [esi + 4], ecx
mov ecx, dword [ebp - 0x7e0]
mov dword [esi + 8], ecx
mov byte [esi + 0xc], al
lea ecx, [ebp - 0x5a8]
call fcn.1001fc60
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.100bb073
mov esp, ebp
pop ebp
ret
call fcn.100da4dc
int3