Function at 0x1002e5d0
Capabilities:
Write file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 8
mov eax, dword [0x100fe214]
push ebx
push esi
mov esi, dword [sym.imp.MSVCR120.dll_fprintf]
inc eax
cmp dword [0x100fd950], 0
push edi
mov edi, dword [ebp + 0xc]
mov dword [ebp - 8], ecx
mov dword [0x100fe214], eax
je case.default.0x1002e623
mov ebx, dword [0x100fd94c]
test eax, eax
je 0x1002e61c
mov edi, eax
push 0x100c2104
push ebx
call esi
add esp, 8
dec edi
jne 0x1002e605
mov ebx, dword [0x100fd94c]
mov edi, dword [ebp + 0xc]
mov eax, dword [edi]
cmp eax, 8
ja case.default.0x1002e623
jmp dword [eax*4 + 0x1002e978]
push str.HNC_UFB_BINARY_:
jmp 0x1002e667
push str.HNC_UFB_SET_:
jmp 0x1002e667
push str.HNC_UFB_ARRAY_:
jmp 0x1002e667
push str.HNC_UFB_SIZE1_:
jmp 0x1002e667
push str.HNC_UFB_SIZE2_:
jmp 0x1002e667
push str.HNC_UFB_SIZE4_:
jmp 0x1002e667
push str.HNC_UFB_SIZE8_:
jmp 0x1002e667
push str.HNC_UFB_STRING_:
jmp 0x1002e667
push str.HNC_UFB_SIZE16_:
push ebx
call esi
add esp, 8
mov ebx, dword [ebp + 8]
push ebx
push 1
push 4
push edi
call dword [sym.imp.MSVCR120.dll_fwrite]
mov eax, dword [edi]
add esp, 0x10
cmp eax, 8
ja case.default.0x1002e68a
jmp dword [eax*4 + 0x1002e99c]
cmp dword [0x100fd950], 0
je 0x1002e6bb
push dword [0x100fe214]
push dword [0x100fd94c]
call fcn.1002ea90
push str.NULL__n
push dword [0x100fd94c]
call esi
add esp, 8
push ebx
push 1
lea eax, [edi + 8]
push 4
push eax
mov eax, dword [sym.imp.MSVCR120.dll_fwrite]
call eax
add esp, 0x10
dec dword [0x100fe214]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8
cmp dword [0x100fd950], 0
je 0x1002e70a
push dword [0x100fe214]
push dword [0x100fd94c]
call fcn.1002ea90
push dword [edi + 8]
push str.Set_Arr_Data_Count_:__d_n
push dword [0x100fd94c]
call esi
add esp, 0xc
push ebx
push 1
lea eax, [edi + 8]
push 4
push eax
mov eax, dword [sym.imp.MSVCR120.dll_fwrite]
call eax
add esp, 0x10
mov dword [ebp + 0xc], 0
cmp dword [edi + 8], 0
jbe case.default.0x1002e68a
xor ecx, ecx
mov dword [ebp + 8], ecx
mov eax, dword [edi + 0xc]
test eax, eax
jne 0x1002e778
cmp dword [0x100fd950], eax
je 0x1002e763
push dword [0x100fe214]
push dword [0x100fd94c]
call fcn.1002ea90
push str.NULL
push dword [0x100fd94c]
call esi
add esp, 8
push ebx
push 1
push 2
push 0x100c20a8
call dword [sym.imp.MSVCR120.dll_fwrite]
add esp, 0x10
jmp 0x1002e784
add eax, ecx
mov ecx, dword [ebp - 8]
push eax
push ebx
call fcn.1002e5d0
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp + 8]
inc eax
add ecx, 0x18
mov dword [ebp + 0xc], eax
mov dword [ebp + 8], ecx
cmp eax, dword [edi + 8]
jb 0x1002e733
dec dword [0x100fe214]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8
cmp dword [0x100fd950], 0
je 0x1002e7d7
push dword [0x100fe214]
push dword [0x100fd94c]
call fcn.1002ea90
movsx eax, byte [edi + 8]
push eax
push 0x100c2098
push dword [0x100fd94c]
call esi
add esp, 0xc
push ebx
push 1
push 1
jmp 0x1002e959
cmp dword [0x100fd950], 0
je 0x1002e810
push dword [0x100fe214]
push dword [0x100fd94c]
call fcn.1002ea90
movsx eax, word [edi + 8]
push eax
push 0x100c2098
push dword [0x100fd94c]
call esi
add esp, 0xc
push ebx
push 1
push 2
jmp 0x1002e959
cmp dword [0x100fd950], 0
je 0x1002e847
push dword [0x100fe214]
push dword [0x100fd94c]
call fcn.1002ea90
push dword [edi + 8]
push 0x100c2098
push dword [0x100fd94c]
call esi
add esp, 0xc
push ebx
push 1
push 4
jmp 0x1002e959
cmp dword [0x100fd950], 0
je 0x1002e87e
push dword [0x100fe214]
push dword [0x100fd94c]
call fcn.1002ea90
push dword [edi + 8]
push 0x100c2098
push dword [0x100fd94c]
call esi
add esp, 0xc
push ebx
push 1
push 8
jmp 0x1002e959
cmp dword [0x100fd950], 0
je 0x1002e8b5
push dword [0x100fe214]
push dword [0x100fd94c]
call fcn.1002ea90
push dword [edi + 8]
push 0x100c209c
push dword [0x100fd94c]
call esi
add esp, 0xc
mov edx, dword [edi + 8]
mov ecx, edx
lea esi, [ecx + 2]
lea ecx, [ecx]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x1002e8c0
sub ecx, esi
sar ecx, 1
push ebx
push 1
lea eax, [ecx*2 + 2]
push eax
push edx
jmp 0x1002e95d
cmp dword [0x100fd950], 0
je 0x1002e954
push dword [0x100fe214]
push dword [0x100fd94c]
call fcn.1002ea90
movdqu xmm1, xmmword [edi + 8]
movdqa xmm0, xmm1
psrldq xmm0, 8
movd ecx, xmm0
movdqa xmm0, xmm1
psrldq xmm0, 4
mov eax, ecx
shr eax, 0x18
push eax
mov eax, ecx
shr eax, 0x10
movzx eax, al
push eax
mov eax, ecx
shr eax, 8
movzx eax, al
push eax
movzx eax, cl
push eax
movd ecx, xmm0
mov eax, ecx
shr eax, 0x10
push eax
movzx eax, cx
push eax
movd eax, xmm1
push eax
push str.CLSID_:__x__x__x__x__x__x__x__n
push dword [0x100fd94c]
call esi
add esp, 0x24
push ebx
push 1
push 0x10
lea eax, [edi + 8]
push eax
call dword [sym.imp.MSVCR120.dll_fwrite]
add esp, 0x10
dec dword [0x100fe214]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8