Function at 0x100a7150
Capabilities:
Write file on windows

Disassembly:
sub esp, 0xc
push ebx
mov ebx, dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
push ebp
push esi
push edi
mov edi, ecx
mov edx, dword [edi + 0x98]
lea ecx, [edi + 0x98]
test edx, edx
je 0x100a7298
cmp byte [edi + 1], 0
lea ecx, [edi + 0x98]
je 0x100a7298
mov byte [edx + 0x10], 0
lea ecx, [edi + 0x98]
mov ebp, dword [edi + 0x98]
test ebp, ebp
je 0x100a7298
mov ecx, ebp
call fcn.100b9930
mov ecx, ebp
call fcn.100b9a50
xor esi, esi
lea ecx, [ebp + 0x3c]
mov dword [esp + 0x14], ecx
cmp dword [ebp + 0x34], esi
jle 0x100a71ee
mov eax, dword [ecx]
mov eax, dword [eax + esi*4]
mov dword [esp + 0x18], eax
test eax, eax
je 0x100a71e6
mov ecx, eax
call fcn.100ba910
mov eax, dword [0x1024b4a8]
test eax, eax
je 0x100a71da
dec dword [eax + 0x370]
push dword [esp + 0x18]
call ebx
add esp, 4
lea ecx, [ebp + 0x3c]
inc esi
cmp esi, dword [ebp + 0x34]
jl 0x100a71b7
jmp 0x100a71f2
mov dword [esp + 0x14], ecx
mov ecx, dword [ecx]
test ecx, ecx
je 0x100a7225
mov eax, dword [0x1024b4a8]
mov dword [ebp + 0x38], 0
mov dword [ebp + 0x34], 0
test eax, eax
je 0x100a7215
dec dword [eax + 0x370]
push ecx
call ebx
mov eax, dword [esp + 0x18]
add esp, 4
mov dword [eax], 0
mov byte [ebp + 0x11], 0
mov ecx, dword [ebp + 0x54]
test ecx, ecx
je 0x100a7245
mov eax, dword [0x1024b4a8]
test eax, eax
je 0x100a723f
dec dword [eax + 0x370]
push ecx
call ebx
add esp, 4
mov ecx, dword [ebp + 0x48]
test ecx, ecx
je 0x100a7261
mov eax, dword [0x1024b4a8]
test eax, eax
je 0x100a725b
dec dword [eax + 0x370]
push ecx
call ebx
add esp, 4
mov ecx, dword [ebp + 0x3c]
test ecx, ecx
je 0x100a727d
mov eax, dword [0x1024b4a8]
test eax, eax
je 0x100a7277
dec dword [eax + 0x370]
push ecx
call ebx
add esp, 4
mov eax, dword [0x1024b4a8]
test eax, eax
je 0x100a728c
dec dword [eax + 0x370]
push ebp
call ebx
add esp, 4
lea ecx, [edi + 0x98]
cmp byte [edi], 0
mov dword [ecx], 0
je 0x100a7a67
cmp byte [edi + 0x2f1d], 0
je 0x100a7315
mov esi, dword [edi + 0x20]
test esi, esi
je 0x100a7315
mov ebp, dword [0x1024b4a8]
lea ecx, [esp + 0x14]
mov dword [0x1024b4a8], edi
mov dword [edi + 0x2f20], 0
mov dword [esp + 0x14], 0
call fcn.100b3ec0
mov edx, 0x10235868
mov dword [esp + 0x18], eax
mov ecx, esi
call fcn.100a2240
mov esi, eax
test esi, esi
je 0x100a730f
push esi
push dword [esp + 0x18]
push 1
push dword [esp + 0x24]
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fwrite]
push esi
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
add esp, 0x14
mov dword [0x1024b4a8], ebp
mov edx, 6
mov ecx, edi
call fcn.100a4d10
xor esi, esi
cmp dword [edi + 0x1b64], esi
jle 0x100a7362
nop dword [eax + eax]
mov eax, dword [edi + 0x1b6c]
mov ebp, dword [eax + esi*4]
test ebp, ebp
je 0x100a7359
mov ecx, ebp
call fcn.100a45d0
mov eax, dword [0x1024b4a8]
test eax, eax
je 0x100a7353
dec dword [eax + 0x370]
push ebp
call ebx
add esp, 4
inc esi
cmp esi, dword [edi + 0x1b64]
jl 0x100a7330
mov ecx, dword [edi + 0x1b6c]
test ecx, ecx
je 0x100a739f
mov eax, dword [0x1024b4a8]
mov dword [edi + 0x1b68], 0
mov dword [edi + 0x1b64], 0
test eax, eax
je 0x100a738f
dec dword [eax + 0x370]
push ecx
call ebx
add esp, 4
mov dword [edi + 0x1b6c], 0
mov ecx, dword [edi + 0x1b78]
test ecx, ecx
je 0x100a73dc
mov eax, dword [0x1024b4a8]
mov dword [edi + 0x1b74], 0
mov dword [edi + 0x1b70], 0
test eax, eax
je 0x100a73cc
dec dword [eax + 0x370]
push ecx
call ebx
add esp, 4
mov dword [edi + 0x1b78], 0
mov ecx, dword [edi + 0x1b84]
test ecx, ecx
je 0x100a7419
mov eax, dword [0x1024b4a8]
mov dword [edi + 0x1b80], 0
mov dword [edi + 0x1b7c], 0
test eax, eax
je 0x100a7409
dec dword [eax + 0x370]
push ecx
call ebx
add esp, 4
mov dword [edi + 0x1b84], 0
mov dword [edi + 0x1bac], 0
mov ecx, dword [edi + 0x1b90]
test ecx, ecx
je 0x100a7460
mov eax, dword [0x1024b4a8]
mov dword [edi + 0x1b8c], 0
mov dword [edi + 0x1b88], 0
test eax, eax
je 0x100a7450
dec dword [eax + 0x370]
push ecx
call ebx
add esp, 4
mov dword [edi + 0x1b90], 0
mov ecx, dword [edi + 0x1b9c]
test ecx, ecx
je 0x100a749d
mov eax, dword [0x1024b4a8]
mov dword [edi + 0x1b98], 0
mov dword [edi + 0x1b94], 0
test eax, eax
je 0x100a748d
dec dword [eax + 0x370]
push ecx
call ebx
add esp, 4
mov dword [edi + 0x1b9c], 0
mov dword [edi + 0x1d44], 0
mov dword [edi + 0x1bb4], 0
mov dword [edi + 0x1bb0], 0
mov dword [edi + 0x1c24], 0
mov dword [edi + 0x1c10], 0
mov dword [edi + 0x1bb8], 0
mov ecx, dword [edi + 0x1ce0]
test ecx, ecx
je 0x100a7516
mov eax, dword [0x1024b4a8]
mov dword [edi + 0x1cdc], 0
mov dword [edi + 0x1cd8], 0
test eax, eax
je 0x100a7506
dec dword [eax + 0x370]
push ecx
call ebx
add esp, 4
mov dword [edi + 0x1ce0], 0
mov ecx, dword [edi + 0x1cec]
test ecx, ecx
je 0x100a7553
mov eax, dword [0x1024b4a8]
mov dword [edi + 0x1ce8], 0
mov dword [edi + 0x1ce4], 0
test eax, eax
je 0x100a7543
dec dword [eax + 0x370]
push ecx
call ebx
add esp, 4
mov dword [edi + 0x1cec], 0
mov ecx, dword [edi + 0x1cf8]
test ecx, ecx
je 0x100a7590
mov eax, dword [0x1024b4a8]
mov dword [edi + 0x1cf4], 0
mov dword [edi + 0x1cf0], 0
test eax, eax
je 0x100a7580
dec dword [eax + 0x370]
push ecx
call ebx
add esp, 4
mov dword [edi + 0x1cf8], 0
mov ecx, dword [edi + 0x1d28]
test ecx, ecx
je 0x100a75cd
mov eax, dword [0x1024b4a8]
mov dword [edi + 0x1d24], 0
mov dword [edi + 0x1d20], 0
test eax, eax
je 0x100a75bd
dec dword [eax + 0x370]
push ecx
call ebx
add esp, 4
mov dword [edi + 0x1d28], 0
mov ecx, dword [edi + 0x1d34]
test ecx, ecx
je 0x100a760a
mov eax, dword [0x1024b4a8]
mov dword [edi + 0x1d30], 0
mov dword [edi + 0x1d2c], 0
test eax, eax
je 0x100a75fa
dec dword [eax + 0x370]
push ecx
call ebx
add esp, 4
mov dword [edi + 0x1d34], 0
xor ebp, ebp
cmp dword [edi + 0x1d38], ebp
jle 0x100a76ab
nop dword [eax + eax]
mov eax, dword [edi + 0x1d40]
mov esi, dword [eax + ebp*4]
test esi, esi
je 0x100a769e
mov eax, dword [esi + 0x2c]
mov dword [esp + 0x18], eax
test eax, eax
je 0x100a7657
mov ecx, eax
call fcn.100a0830
mov eax, dword [0x1024b4a8]
test eax, eax
je 0x100a764e
dec dword [eax + 0x370]
push dword [esp + 0x18]
call ebx
add esp, 4
mov eax, dword [esi + 0x30]
mov dword [esp + 0x18], eax
test eax, eax
je 0x100a7681
mov ecx, eax
call fcn.100a0830
mov eax, dword [0x1024b4a8]
test eax, eax
je 0x100a7678
dec dword [eax + 0x370]
push dword [esp + 0x18]
call ebx
add esp, 4
lea ecx, [esi + 0x60]
call fcn.100a0960
mov eax, dword [0x1024b4a8]
test eax, eax
je 0x100a7698
dec dword [eax + 0x370]
push esi
call ebx
add esp, 4
inc ebp
cmp ebp, dword [edi + 0x1d38]
jl 0x100a7620
mov ecx, dword [edi + 0x1d40]
test ecx, ecx
je 0x100a76e8
mov eax, dword [0x1024b4a8]
mov dword [edi + 0x1d3c], 0
mov dword [edi + 0x1d38], 0
test eax, eax
je 0x100a76d8
dec dword [eax + 0x370]
push ecx
call ebx
add esp, 4
mov dword [edi + 0x1d40], 0
lea ecx, [edi + 0x1f68]
call fcn.100b4690
mov ecx, dword [edi + 0x1f90]
test ecx, ecx
je 0x100a7730
mov eax, dword [0x1024b4a8]
mov dword [edi + 0x1f8c], 0
mov dword [edi + 0x1f88], 0
test eax, eax
je 0x100a7720
dec dword [eax + 0x370]
push ecx
call ebx
add esp, 4
mov dword [edi + 0x1f90], 0
mov ecx, dword [edi + 0x1f9c]
test ecx, ecx
je 0x100a776d
mov eax, dword [0x1024b4a8]
mov dword [edi + 0x1f98], 0
mov dword [edi + 0x1f94], 0
test eax, eax
je 0x100a775d
dec dword [eax + 0x370]
push ecx
call ebx
add esp, 4
mov dword [edi + 0x1f9c], 0
lea ecx, [edi + 0x1f20]
call fcn.100b4770
xor ebp, ebp
cmp dword [edi + 0x1f40], ebp
jle 0x100a77d0
xor ecx, ecx
mov dword [esp + 0x14], ecx
nop dword [eax + eax]
mov esi, dword [edi + 0x1f48]
add esi, ecx
lea ecx, [esi + 0x10]
call fcn.100b9120
mov ecx, dword [esi + 0x20]
test ecx, ecx
je 0x100a77bc
mov eax, dword [0x1024b4a8]
test eax, eax
je 0x100a77b6
dec dword [eax + 0x370]
push ecx
call ebx
add esp, 4
mov ecx, dword [esp + 0x14]
inc ebp
add ecx, 0x68
mov dword [esp + 0x14], ecx
cmp ebp, dword [edi + 0x1f40]
jl 0x100a7790
mov ecx, dword [edi + 0x1f48]
test ecx, ecx
je 0x100a780d
mov eax, dword [0x1024b4a8]
mov dword [edi + 0x1f44], 0
mov dword [edi + 0x1f40], 0
test eax, eax
je 0x100a77fd
dec dword [eax + 0x370]
push ecx
call ebx
add esp, 4
mov dword [edi + 0x1f48], 0
mov ecx, dword [edi + 0x1f60]
test ecx, ecx
je 0x100a784a
mov eax, dword [0x1024b4a8]
mov dword [edi + 0x1f5c], 0
mov dword [edi + 0x1f58], 0
test eax, eax
je 0x100a783a
dec dword [eax + 0x370]
push ecx
call ebx
add esp, 4
mov dword [edi + 0x1f60], 0
mov ecx, dword [edi + 0x2efc]
test ecx, ecx
je 0x100a7887
mov eax, dword [0x1024b4a8]
mov dword [edi + 0x2ef8], 0
mov dword [edi + 0x2ef4], 0
test eax, eax
je 0x100a7877
dec dword [eax + 0x370]
push ecx
call ebx
add esp, 4
mov dword [edi + 0x2efc], 0
mov ecx, dword [edi + 0x2f08]
test ecx, ecx
je 0x100a78c4
mov eax, dword [0x1024b4a8]
mov dword [edi + 0x2f04], 0
mov dword [edi + 0x2f00], 0
test eax, eax
je 0x100a78b4
dec dword [eax + 0x370]
push ecx
call ebx
add esp, 4
mov dword [edi + 0x2f08], 0
mov ecx, dword [edi + 0x1fbc]
test ecx, ecx
je 0x100a7901
mov eax, dword [0x1024b4a8]
mov dword [edi + 0x1fb8], 0
mov dword [edi + 0x1fb4], 0
test eax, eax
je 0x100a78f1
dec dword [eax + 0x370]
push ecx
call ebx
add esp, 4
mov dword [edi + 0x1fbc], 0
mov ecx, dword [edi + 0x1fc8]
test ecx, ecx
je 0x100a793e
mov eax, dword [0x1024b4a8]
mov dword [edi + 0x1fc4], 0
mov dword [edi + 0x1fc0], 0
test eax, eax
je 0x100a792e
dec dword [eax + 0x370]
push ecx
call ebx
add esp, 4
mov dword [edi + 0x1fc8], 0
mov ecx, dword [edi + 0x1fd4]
test ecx, ecx
je 0x100a797b
mov eax, dword [0x1024b4a8]
mov dword [edi + 0x1fd0], 0
mov dword [edi + 0x1fcc], 0
test eax, eax
je 0x100a796b
dec dword [eax + 0x370]
push ecx
call ebx
add esp, 4
mov dword [edi + 0x1fd4], 0
mov ecx, dword [edi + 0x2f44]
test ecx, ecx
je 0x100a79b8
mov eax, dword [0x1024b4a8]
mov dword [edi + 0x2f40], 0
mov dword [edi + 0x2f3c], 0
test eax, eax
je 0x100a79a8
dec dword [eax + 0x370]
push ecx
call ebx
add esp, 4
mov dword [edi + 0x2f44], 0
mov ecx, dword [edi + 0x2f38]
test ecx, ecx
je 0x100a79f5
mov eax, dword [0x1024b4a8]
mov dword [edi + 0x2f34], 0
mov dword [edi + 0x2f30], 0
test eax, eax
je 0x100a79e5
dec dword [eax + 0x370]
push ecx
call ebx
add esp, 4
mov dword [edi + 0x2f38], 0
cmp dword [edi + 0x2f6c], 0
je 0x100a7a27
mov esi, dword [edi + 0x2f6c]
push 1
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
add esp, 4
cmp esi, eax
je 0x100a7a1d
push esi
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
add esp, 4
mov dword [edi + 0x2f6c], 0
mov ecx, dword [edi + 0x2f78]
test ecx, ecx
je 0x100a7a64
mov eax, dword [0x1024b4a8]
mov dword [edi + 0x2f74], 0
mov dword [edi + 0x2f70], 0
test eax, eax
je 0x100a7a54
dec dword [eax + 0x370]
push ecx
call ebx
add esp, 4
mov dword [edi + 0x2f78], 0
mov byte [edi], 0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret