Function at 0x430fe0
Capabilities:
Write file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x428
mov eax, dword [0x47c554]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
mov esi, dword [sym.imp.KERNEL32.dll_SetFilePointer]
push edi
push 0
push 0
push 0
push dword [0xd97410]
call esi
push 0
push dword [0x47cea0]
push 0
push 0
push closesocket
push closesocket
push closesocket
push closesocket
push 0x84
push 0x46a930
push 0x45bc30
push 0
call dword [sym.imp.USER32.dll_CreateWindowExA]
mov edi, dword [sym.imp.USER32.dll_SendMessageA]
mov ebx, eax
lea eax, [ebp - 0x428]
mov dword [ebp - 0x40c], ebx
push eax
push 1
push 0x449
push ebx
mov dword [ebp - 0x428], 0xd97410
mov dword [ebp - 0x420], 0x412200
mov dword [ebp - 0x424], 0
call edi
push 0
push 0
push 0
push dword [0xd97410]
call esi
push 0
push 0
push 0xba
push ebx
call edi
push str.define__s___
mov dword [ebp - 0x408], eax
lea eax, [ebp - 0x204]
push 0x100
push eax
call fcn.0043f2f3
add esp, 0xc
mov esi, 0x46f014
xor edi, edi
mov ebx, 0x45bc50
lea ecx, [ebp - 0x204]
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4310d0
sub ecx, edx
mov eax, 0x100
sub eax, ecx
push 0x45bc4c
push eax
lea eax, [ebp - 0x204]
push eax
call fcn.0043f34d
lea ecx, [ebp - 0x204]
add esp, 0xc
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x431100
push dword [esi]
sub ecx, edx
mov eax, 0x100
sub eax, ecx
push eax
lea eax, [ebp - 0x204]
push eax
call fcn.0043f34d
lea ecx, [ebp - 0x204]
add esp, 0xc
lea edx, [ecx + 1]
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x431130
sub ecx, edx
mov eax, 0x45bc54
cmp edi, 8
cmovl eax, ebx
push eax
mov eax, 0x100
sub eax, ecx
push eax
lea eax, [ebp - 0x204]
push eax
call fcn.0043f34d
add esi, 0x1c
add esp, 0xc
inc edi
cmp esi, 0x46f110
jl 0x4310c3
lea ecx, [ebp - 0x204]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x431175
sub ecx, edx
mov eax, 0x100
sub eax, ecx
push str.__u__u_
push eax
lea eax, [ebp - 0x204]
push eax
call fcn.0043f34d
mov edi, dword [sym.imp.KERNEL32.dll_WriteFile]
xor ebx, ebx
add esp, 0xc
cmp dword [ebp - 0x408], ebx
jle 0x4312da
mov esi, dword [sym.imp.USER32.dll_SendMessageA]
nop dword [eax]
nop dword [eax + eax]
push 0xff
lea eax, [ebp - 0x103]
push 0
push eax
call fcn.0043d400
add esp, 0xc
mov byte [ebp - 0x104], 0xff
lea eax, [ebp - 0x104]
push eax
push ebx
push 0xc4
push dword [ebp - 0x40c]
call esi
push 0
push 0
push ebx
push 0xbb
push dword [ebp - 0x40c]
call esi
push eax
push 0xc1
push dword [ebp - 0x40c]
call esi
cmp eax, 0x100
jae 0x431672
mov byte [ebp + eax - 0x104], 0
cmp byte [ebp - 0x104], 0
je 0x4312cd
lea eax, [ebp - 0x418]
push eax
lea eax, [ebp - 0x414]
push eax
push 0x100
lea eax, [ebp - 0x304]
push eax
push 0x100
lea eax, [ebp - 0x404]
push eax
lea eax, [ebp - 0x204]
push eax
lea eax, [ebp - 0x104]
push eax
call fcn.0040c170
add esp, 0x20
cmp eax, 4
jne 0x431505
xor edi, edi
mov esi, 0x46f014
nop
mov ecx, dword [esi]
lea eax, [ebp - 0x304]
mov dl, byte [ecx]
cmp dl, byte [eax]
jne 0x4312a8
test dl, dl
je 0x4312a4
mov dl, byte [ecx + 1]
cmp dl, byte [eax + 1]
jne 0x4312a8
add ecx, 2
add eax, 2
test dl, dl
jne 0x431288
xor eax, eax
jmp 0x4312ad
sbb eax, eax
or eax, 1
test eax, eax
je 0x43138b
add esi, 0x1c
inc edi
cmp esi, 0x46f110
jl 0x431280
mov esi, dword [sym.imp.USER32.dll_SendMessageA]
mov edi, dword [sym.imp.KERNEL32.dll_WriteFile]
inc ebx
cmp ebx, dword [ebp - 0x408]
jl 0x4311c0
push str._n_n_n__Mnemonics_added_or_moved_after_used_of_I_O_mnemonics_edition_tooling___n_n
lea eax, [ebp - 0x104]
push 0x100
push eax
call fcn.004038d0
lea ecx, [ebp - 0x104]
add esp, 0xc
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x431300
push 0
lea eax, [ebp - 0x41c]
sub ecx, edx
push eax
push ecx
lea eax, [ebp - 0x104]
push eax
push dword [0xd97410]
call edi
mov edx, dword [0x48c400]
xor edi, edi
mov dword [ebp - 0x408], edi
mov dword [ebp - 0x410], 0x10
nop word [eax + eax]
mov eax, edx
xor ebx, ebx
shl eax, 4
test eax, eax
jle 0x431645
xor esi, esi
mov ecx, dword [edi*4 + 0xd97400]
add ecx, 8
add ecx, esi
cmp byte [ecx], 0
je 0x431631
mov eax, ebx
cdq
idiv dword [ebp - 0x410]
inc edx
push edx
push eax
lea eax, [ebp - 0x104]
test edi, edi
jne 0x431567
push dword [0x46f030]
jmp 0x43156d
cmp edi, 9
jge 0x4312c1
lea eax, [edi*8]
sub eax, edi
cmp byte [eax*4 + 0x46f01c], 1
jne 0x4312c1
sub edi, 1
je 0x4313c2
sub edi, 1
jne 0x4313cc
mov edi, 1
mov dword [ebp - 0x410], edi
jmp 0x4313d2
xor edi, edi
mov dword [ebp - 0x410], edi
jmp 0x4313d2
mov edi, dword [ebp - 0x410]
mov edx, dword [ebp - 0x414]
mov eax, edx
mov esi, dword [ebp - 0x418]
shl eax, 4
add eax, esi
imul ecx, eax, 0x8c
mov eax, dword [edi*4 + 0xd97400]
add ecx, 0xffffff7c
add eax, ecx
cmp byte [eax], 0
je 0x4312c1
push esi
push edx
lea ecx, [ebp - 0x304]
push ecx
push eax
push 0x19
push str.define___s______s__u__u_
lea eax, [ebp - 0x104]
push 0x100
push eax
call fcn.004038d0
mov eax, dword [ebp - 0x414]
add esp, 0x20
mov edx, dword [edi*4 + 0xd97400]
shl eax, 4
add eax, dword [ebp - 0x418]
imul ecx, eax, 0x8c
add ecx, 0xffffff96
add edx, ecx
cmp byte [edx], 0
je 0x43147f
lea ecx, [ebp - 0x104]
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x431457
push edx
sub ecx, esi
mov eax, 0x100
sub eax, ecx
push str.______s__
push eax
lea eax, [ebp - 0x104]
add eax, ecx
push eax
call fcn.004038d0
add esp, 0x10
lea ecx, [ebp - 0x104]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x431488
sub ecx, edx
mov eax, 0x100
sub eax, ecx
push 0x46ab94
push eax
lea eax, [ebp - 0x104]
push eax
call fcn.0043f34d
lea ecx, [ebp - 0x104]
add esp, 0xc
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4314b6
push 0
lea eax, [ebp - 0x41c]
sub ecx, edx
push eax
push ecx
lea eax, [ebp - 0x104]
push eax
push dword [0xd97410]
call dword [sym.imp.KERNEL32.dll_WriteFile]
mov eax, dword [ebp - 0x414]
shl eax, 4
add eax, dword [ebp - 0x418]
imul ecx, eax, 0x8c
mov eax, dword [edi*4 + 0xd97400]
mov byte [ecx + eax - 0x84], 0
jmp 0x4312c1
lea ecx, [ebp - 0x104]
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x431510
sub ecx, edx
mov eax, 0x100
sub eax, ecx
push 0x46ab94
push eax
lea eax, [ebp - 0x104]
push eax
call fcn.0043f34d
lea ecx, [ebp - 0x104]
add esp, 0xc
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x431540
push 0
lea eax, [ebp - 0x41c]
sub ecx, edx
push eax
push ecx
lea eax, [ebp - 0x104]
push eax
push dword [0xd97410]
call edi
jmp 0x4312cd
push dword [0x46f04c]
push ecx
push 0x19
push str.define___s______s__u__u_
push 0x100
push eax
call fcn.004038d0
mov edx, dword [edi*4 + 0xd97400]
add esp, 0x20
add edx, 0x22
add edx, esi
cmp byte [edx], 0
je 0x4315ce
lea ecx, [ebp - 0x104]
lea edi, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4315a0
push edx
sub ecx, edi
mov eax, 0x100
sub eax, ecx
push str.______s__
push eax
lea eax, [ebp - 0x104]
add eax, ecx
push eax
call fcn.004038d0
mov edi, dword [ebp - 0x408]
add esp, 0x10
lea ecx, [ebp - 0x104]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4315d7
sub ecx, edx
mov eax, 0x100
sub eax, ecx
push 0x46ab94
push eax
lea eax, [ebp - 0x104]
push eax
call fcn.0043f34d
lea ecx, [ebp - 0x104]
add esp, 0xc
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x431605
push 0
lea eax, [ebp - 0x41c]
sub ecx, edx
push eax
push ecx
lea eax, [ebp - 0x104]
push eax
push dword [0xd97410]
call dword [sym.imp.KERNEL32.dll_WriteFile]
mov edx, dword [0x48c400]
mov eax, edx
inc ebx
shl eax, 4
add esi, 0x8c
cmp ebx, eax
jl 0x431351
inc edi
mov dword [ebp - 0x408], edi
cmp edi, 2
jl 0x431340
pop edi
pop esi
pop ebx
push dword [ebp - 0x40c]
call dword [sym.imp.USER32.dll_DestroyWindow]
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0043b572
mov esp, ebp
pop ebp
ret
call fcn.0043b497
int3