Function at 0x100015c8
Capabilities:
Check os version
Query environment variable
Read file on windows
Write file on windows

Disassembly:
mov eax, 0x1001254a
call sub.MSVCRT.dll__EH_prolog
sub esp, 0xe60
push ebx
push esi
push edi
lea ecx, [ebp - 0x1c]
mov dword [ebp - 0x10], esp
call fcn.1000118b
xor ebx, ebx
lea ecx, [ebp - 0x5c]
mov dword [ebp - 4], ebx
call fcn.1000103b
lea ecx, [ebp - 0x80]
call fcn.1000103b
lea ecx, [ebp - 0x74]
call fcn.1000103b
lea ecx, [ebp - 0x68]
call fcn.1000103b
lea ecx, [ebp - 0x50]
call fcn.1000103b
lea ecx, [ebp - 0x34]
call fcn.1000103b
mov byte [ebp - 4], 6
call fcn.10001292
push 0x40
push ebx
push 0x1001cc80
mov byte [0x1001cb00], 0x3b
mov byte [0x10024570], bl
mov byte [0x10025294], bl
mov dword [0x1001d72c], ebx
mov byte [0x1002467e], bl
mov dword [0x10025288], ebx
mov dword [0x1001e274], ebx
mov byte [0x10024515], bl
mov byte [0x1002467c], bl
mov byte [0x10024680], bl
mov byte [0x10024681], bl
mov dword [0x10024508], ebx
mov dword [0x10024348], ebx
mov byte [0x1001d018], bl
mov byte [0x10025295], bl
mov byte [0x10024678], bl
mov byte [0x1002467d], bl
mov dword [0x1001d734], ebx
call sub.MSVCRT.dll_memset
push 0x4140
push ebx
push 0x1001f5c8
call sub.MSVCRT.dll_memset
push dword [0x1001caf0]
push 0x1001e280
call sub.MSVCRT.dll_strcpy
push dword [0x1001caf4]
push 0x1001eaa8
call sub.MSVCRT.dll_strcpy
push 0x100137dc
push 0x1001d520
call sub.MSVCRT.dll_strcpy
add esp, 0x30
mov dword [0x1001e274], ebx
mov dword [0x1001f4bc], ebx
mov dword [0x1002391c], ebx
mov dword [0x1001e594], ebx
mov dword [0x1001e278], 4
mov byte [0x1001d941], bl
mov dword [0x1001d730], ebx
mov byte [0x1001eaa1], bl
mov byte [0x10024045], bl
mov byte [0x1001eba9], bl
mov byte [0x1001d519], bl
mov byte [0x1001ced8], bl
mov byte [0x10024344], bl
mov byte [0x1001cdc9], bl
mov byte [0x10023708], bl
mov byte [0x1001ccc1], bl
test byte [0x1002423c], 1
mov byte [0x1001d010], bl
mov byte [0x1001ced9], bl
mov byte [0x1001f5c4], bl
mov byte [0x1001da49], bl
mov byte [0x1001e061], bl
mov byte [0x1001d83c], bl
mov byte [0x1001ebaa], bl
mov byte [0x1001ccc0], bl
mov dword [0x1001ced4], ebx
mov byte [0x1001ccc2], 1
mov byte [0x1001eaa2], 1
mov dword [0x1001db54], ebx
mov byte [0x1001d738], bl
mov byte [0x10023d28], bl
mov byte [0x1001e068], bl
mov byte [0x1001ebb0], bl
mov byte [0x1001db58], bl
mov byte [0x1001e170], bl
mov byte [0x1001cf08], bl
mov byte [0x1001ccc8], bl
mov byte [0x1001d948], bl
mov byte [0x1001da50], bl
mov byte [0x10024e88], bl
mov byte [0x1001d018], bl
mov byte [0x1001cdd0], bl
mov byte [0x1001d628], bl
mov byte [0x1001e598], bl
mov byte [0x1001dc60], bl
mov byte [0x10023920], bl
mov byte [0x10023e30], bl
mov byte [0x1001d840], bl
mov byte [0x1001e388], bl
mov byte [0x10023710], bl
mov byte [0x10024048], bl
mov byte [0x1001f3b8], bl
mov byte [0x10023818], bl
mov byte [0x1001e9a0], bl
mov byte [0x1001e490], bl
mov byte [0x1001d418], bl
mov byte [0x1001efb8], bl
jne 0x1000185f
or dword [0x1002423c], 1
mov ecx, 0x100241e8
mov byte [ebp - 4], 8
call fcn.1000d456
push 0x10012bc7
call fcn.10012248
pop ecx
mov dword [0x10023d24], 0x100241e8
jmp 0x10001891
xor esi, esi
inc esi
cmp dword [ebp + 8], 2
mov dword [ebp - 4], 6
jg 0x100018fc
mov edi, dword [sym.imp.KERNEL32.dll_GetEnvironmentVariableA]
push esi
lea eax, [ebp - 0x1d]
push eax
push str.REQUEST_METHOD
call edi
test eax, eax
jbe 0x100018fc
push esi
lea eax, [ebp - 0x1d]
push eax
push str.GATEWAY_INTERFACE
call edi
test eax, eax
jbe 0x100018fc
lea eax, [ebp - 0x50]
push eax
lea eax, [ebp - 0x68]
push eax
lea eax, [ebp - 0x80]
push eax
lea eax, [ebp - 0x74]
push eax
lea eax, [ebp - 0x5c]
push eax
lea eax, [ebp + 0xc]
push eax
lea eax, [ebp + 8]
push eax
call fcn.1000c281
add esp, 0x1c
test eax, eax
je 0x100018fc
mov byte [0x10023708], 1
mov dword [0x1001d734], esi
push str.plain
push 0x10024034
mov byte [0x1001cedc], bl
mov dword [0x1001ced4], ebx
mov byte [0x1002467f], bl
call sub.MSVCRT.dll_strcpy
cmp dword [ebp + 8], 2
pop ecx
pop ecx
jge 0x10001931
push ebx
call fcn.1000532a
pop ecx
jmp 0x10001b10
push 0x104
push ebx
mov edi, 0x1001f4c0
push edi
mov dword [ebp - 0x18], ebx
mov dword [ebp - 0x24], ebx
call sub.MSVCRT.dll_memset
mov edx, dword [ebp + 0xc]
mov eax, dword [edx + 4]
mov cl, byte [eax]
add esp, 0xc
cmp cl, 0x2d
je 0x1000195d
cmp cl, 0x2f
jne 0x10001966
cmp byte [eax + 1], bl
je 0x10001966
push esi
push esi
jmp 0x10001969
push esi
push 2
push edx
push dword [ebp + 8]
call fcn.100054a8
add esp, 0x10
cmp dword [0x1001e274], ebx
mov esi, eax
jne 0x10001af4
cmp dword [0x1001d734], ebx
jne 0x100019a5
movsx eax, byte [0x10023708]
push eax
call fcn.100049ad
cmp dword [0x1001e274], ebx
pop ecx
jne 0x10001af4
cmp esi, ebx
jne 0x10001af4
cmp byte [0x1001f4c0], bl
je 0x10001b70
mov esi, 0x404
push esi
call sub.MSVCRT.dll_malloc
cmp eax, ebx
pop ecx
mov dword [ebp - 0x18], eax
je 0x10001b70
push esi
push ebx
push eax
mov dword [ebp - 0x28], ebx
call sub.MSVCRT.dll_memset
push 0x100137ac
push edi
call sub.MSVCRT.dll_fopen
add esp, 0x14
cmp eax, ebx
mov dword [0x1001dc5c], eax
jne 0x10001a26
push dword [ebp - 0x18]
call sub.MSVCRT.dll_free
push edi
push str.Options_file___s__not_found_or_could_not_be_opened._n
call fcn.100013bb
push ebx
call fcn.100013bb
add esp, 0x10
mov eax, dword [0x1001db54]
cmp eax, ebx
je 0x10001a1e
push eax
call sub.MSVCRT.dll_fclose
pop ecx
push 2
pop esi
jmp 0x10001b0b
mov edi, dword [ebp - 0x28]
mov esi, 0x100
test byte [eax + 0xc], 0x10
jne 0x10001a98
push eax
lea eax, [ebp - 0xe6c]
push 0x800
push eax
call sub.MSVCRT.dll_fgets
add esp, 0xc
cmp eax, ebx
je 0x10001a8f
lea eax, [ebp - 0xe6c]
push eax
call sub.MSVCRT.dll_strlen
dec eax
mov dword [ebp - 0x14], eax
lea eax, [ebp + eax - 0xe6c]
pop ecx
mov cl, byte [eax]
cmp cl, 0xa
je 0x10001a71
cmp cl, 0xd
jne 0x10001a75
mov byte [eax], bl
jmp 0x10001a4d
push ebx
push edi
push esi
push dword [ebp - 0x18]
lea eax, [ebp - 0xe6c]
push eax
call fcn.1000a3d2
mov edi, eax
add esp, 0x14
mov dword [ebp - 0x28], edi
cmp edi, esi
mov eax, dword [0x1001dc5c]
jb 0x10001a2e
push eax
call sub.MSVCRT.dll_fclose
cmp edi, ebx
pop ecx
mov dword [ebp - 0x24], edi
je 0x10001b70
mov edi, dword [ebp - 0x18]
push 1
push ebx
push edi
push dword [ebp - 0x28]
call fcn.100054a8
add esp, 0x10
cmp dword [0x1001e274], ebx
mov esi, eax
jne 0x10001ace
cmp esi, ebx
je 0x10001b70
mov dword [ebp - 0x14], ebx
mov eax, dword [edi]
jmp 0x10001ae5
push eax
call sub.MSVCRT.dll_free
inc dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
mov eax, dword [edi + eax*4]
pop ecx
cmp eax, ebx
jne 0x10001ad5
push edi
call sub.MSVCRT.dll_free
cmp esi, ebx
pop ecx
je 0x10001b0b
push ebx
call fcn.100013bb
mov eax, dword [0x1001db54]
cmp eax, ebx
pop ecx
je 0x10001b0b
push eax
call sub.MSVCRT.dll_fclose
pop ecx
call fcn.10001292
lea ecx, [ebp - 0x34]
mov byte [ebp - 4], 5
call fcn.1000102d
lea ecx, [ebp - 0x50]
mov byte [ebp - 4], 4
call fcn.1000102d
lea ecx, [ebp - 0x68]
mov byte [ebp - 4], 3
call fcn.1000102d
lea ecx, [ebp - 0x74]
mov byte [ebp - 4], 2
call fcn.1000102d
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 1
call fcn.1000102d
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], bl
call fcn.1000102d
lea ecx, [ebp - 0x1c]
call fcn.100015c3
mov ecx, dword [ebp - 0xc]
pop edi
mov eax, esi
pop esi
mov dword fs:[0], ecx
pop ebx
leave
ret
mov eax, dword [ebp + 0xc]
mov eax, dword [eax + 4]
mov cl, byte [eax]
cmp cl, 0x2d
je 0x10001b95
cmp cl, 0x2f
je 0x10001b95
push 0x103
push eax
push 0x1001d738
call sub.MSVCRT.dll_strncpy
add esp, 0xc
push 0x10024570
mov byte [0x1001d83b], bl
call fcn.1000a13c
mov edi, 0x1001cdd0
push edi
push 0x1001d948
mov dword [0x1001d00c], eax
call sub.MSVCRT.dll_strcpy
push edi
push 0x1001da50
call sub.MSVCRT.dll_strcpy
push ebx
call sub.MSVCRT.dll_time
mov esi, eax
call sub.MSVCRT.dll_clock
add esi, eax
push esi
call sub.MSVCRT.dll_srand
add esp, 0x1c
cmp dword [ebp - 0x24], ebx
je 0x10001c2b
mov edi, dword [ebp - 0x18]
push ebx
push ebx
push edi
push dword [ebp - 0x24]
call fcn.100054a8
mov esi, eax
mov dword [ebp - 0x14], ebx
mov eax, dword [edi]
add esp, 0x10
jmp 0x10001c0c
push eax
call sub.MSVCRT.dll_free
inc dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
mov eax, dword [edi + eax*4]
pop ecx
cmp eax, ebx
jne 0x10001bfc
push edi
call sub.MSVCRT.dll_free
cmp dword [0x1001e274], ebx
pop ecx
jne 0x10001af4
cmp esi, ebx
jne 0x10001af4
mov edx, dword [ebp + 0xc]
mov eax, dword [edx + 4]
mov cl, byte [eax]
cmp cl, 0x2d
je 0x10001c3d
cmp cl, 0x2f
jne 0x10001c47
cmp byte [eax + 1], bl
je 0x10001c47
push ebx
push 1
jmp 0x10001c4a
push ebx
push 2
push edx
push dword [ebp + 8]
call fcn.100054a8
add esp, 0x10
cmp dword [0x1001e274], ebx
mov edi, eax
jne 0x100024d7
cmp edi, ebx
jne 0x100024d7
push 0xc
pop esi
cmp dword [0x1001d00c], esi
jne 0x10001c9a
cmp byte [0x1001da50], bl
je 0x10001c8f
cmp byte [0x1001d628], bl
jne 0x10001c9a
cmp byte [0x1001d840], bl
jne 0x10001c9a
push str.Failed_to_open_registry_key_for_Blat_n
call fcn.100013bb
pop ecx
cmp byte [0x1002467c], bl
jne 0x10001cb3
push 0x1001da50
push 0x1001d948
call sub.MSVCRT.dll_strcpy
pop ecx
pop ecx
cmp byte [0x1001da50], bl
je 0x100024b5
cmp byte [0x1001d628], bl
jne 0x10001cd3
cmp byte [0x1001d840], bl
je 0x100024b5
cmp byte [0x1001d738], bl
je 0x10001dd9
push 0x10013748
mov esi, 0x1001d738
push esi
call dword [sym.imp.KERNEL32.dll_lstrcmpA]
test eax, eax
je 0x10001dd9
mov edi, 0x9c
push edi
lea eax, [ebp - 0x134]
push ebx
push eax
call sub.MSVCRT.dll_memset
add esp, 0xc
lea eax, [ebp - 0x134]
mov dword [ebp - 0x134], edi
mov edi, dword [sym.imp.KERNEL32.dll_GetVersionExA]
push eax
call edi
test eax, eax
jne 0x10001d3a
lea eax, [ebp - 0x134]
push eax
mov dword [ebp - 0x134], 0x94
call edi
cmp dword [ebp - 0x124], 2
jne 0x10001da1
cmp dword [ebp - 0x130], 5
jb 0x10001da1
push ebx
push 0x80
push 3
push ebx
push 1
push 1
push esi
call dword [sym.imp.KERNEL32.dll_CreateFileA]
cmp eax, 0xffffffff
jne 0x10001d98
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, ebx
push esi
jne 0x10001d7e
push str._s_does_not_exist_n
call fcn.100013bb
pop ecx
pop ecx
jmp 0x10001d8c
push eax
push str.unknown_error_code__d_when_trying_to_open__s_n
call fcn.100013bb
add esp, 0xc
push ebx
call fcn.100013bb
pop ecx
jmp 0x10001a0e
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x10001dd9
push 0x4000
lea eax, [ebp - 0x1bc]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_OpenFile]
cmp eax, 0xffffffff
jne 0x10001dd2
push esi
push str._s_does_not_exist_n
call fcn.100013bb
push ebx
call fcn.100013bb
add esp, 0xc
jmp 0x10001a0e
push eax
call dword [sym.imp.KERNEL32.dll__lclose]
push 0x10024150
call fcn.1000130a
mov edi, 0x100241d4
push edi
call fcn.1000130a
mov esi, 0x10024180
push esi
call fcn.1000130a
push 0x10024150
call fcn.10006a02
push edi
call fcn.10006a02
push esi
call fcn.10006a02
add esp, 0x18
mov ecx, 0x10024150
call fcn.1000112f
mov ecx, 0x100241d4
mov edi, eax
call fcn.1000112f
mov esi, 0x10024180
mov ecx, esi
add edi, eax
call fcn.1000112f
lea eax, [edi + eax + 4]
push eax
lea ecx, [ebp - 0x34]
call fcn.10001074
mov ecx, 0x10024150
call fcn.1000112f
mov ecx, 0x100241d4
mov edi, eax
call fcn.1000112f
mov ecx, esi
add edi, eax
call fcn.1000112f
lea eax, [edi + eax + 4]
mov edi, 0x10024198
push eax
mov ecx, edi
call fcn.10001074
mov ecx, esi
mov dword [ebp - 0x18], ebx
mov dword [ebp - 0x14], ebx
call fcn.1000112f
test eax, eax
jbe 0x10001edf
mov ecx, esi
call fcn.1000c89a
mov edi, dword [ebp - 0x14]
cmp byte [eax + edi], 0x28
jne 0x10001eab
jmp 0x10001e9a
inc edi
mov dword [ebp - 0x14], edi
mov ecx, esi
call fcn.1000c89a
cmp byte [eax + edi], 0x29
jne 0x10001e96
inc edi
mov dword [ebp - 0x14], edi
mov ecx, esi
call fcn.1000c89a
lea ecx, [ebp - 0x34]
mov edi, eax
call fcn.1000c89a
mov ecx, dword [ebp - 0x14]
mov cl, byte [edi + ecx]
mov edx, dword [ebp - 0x18]
inc dword [ebp - 0x18]
mov byte [eax + edx], cl
inc dword [ebp - 0x14]
mov ecx, esi
call fcn.1000112f
cmp dword [ebp - 0x14], eax
jb 0x10001e84
mov edi, 0x10024198
lea ecx, [ebp - 0x34]
call fcn.1000c89a
mov ecx, dword [ebp - 0x18]
mov byte [eax + ecx], bl
lea ecx, [ebp - 0x34]
call fcn.1000c89a
push eax
mov ecx, edi
call fcn.100010f2
mov esi, 0x100241d4
mov ecx, esi
mov dword [ebp - 0x18], ebx
mov dword [ebp - 0x14], ebx
call fcn.1000112f
test eax, eax
jbe 0x10001f6e
mov ecx, esi
call fcn.1000c89a
mov edi, dword [ebp - 0x14]
cmp byte [eax + edi], 0x28
jne 0x10001f3a
jmp 0x10001f29
inc edi
mov dword [ebp - 0x14], edi
mov ecx, esi
call fcn.1000c89a
cmp byte [eax + edi], 0x29
jne 0x10001f25
inc edi
mov dword [ebp - 0x14], edi
mov ecx, esi
call fcn.1000c89a
lea ecx, [ebp - 0x34]
mov edi, eax
call fcn.1000c89a
mov ecx, dword [ebp - 0x14]
mov cl, byte [edi + ecx]
mov edx, dword [ebp - 0x18]
inc dword [ebp - 0x18]
mov byte [eax + edx], cl
inc dword [ebp - 0x14]
mov ecx, esi
call fcn.1000112f
cmp dword [ebp - 0x14], eax
jb 0x10001f13
mov edi, 0x10024198
lea ecx, [ebp - 0x34]
call fcn.1000c89a
mov ecx, dword [ebp - 0x18]
mov byte [eax + ecx], bl
mov ecx, esi
call fcn.1000112f
test eax, eax
je 0x10001fab
mov ecx, edi
call fcn.1000112f
test eax, eax
je 0x10001f9b
push 0x2c
mov ecx, edi
call fcn.1000110f
lea ecx, [ebp - 0x34]
call fcn.1000c89a
push eax
mov ecx, edi
call fcn.100010f2
mov esi, 0x10024150
mov ecx, esi
mov dword [ebp - 0x18], ebx
mov dword [ebp - 0x14], ebx
call fcn.1000112f
test eax, eax
jbe 0x1000201c
mov ecx, esi
call fcn.1000c89a
mov edi, dword [ebp - 0x14]
cmp byte [eax + edi], 0x28
jne 0x10001fe8
jmp 0x10001fd7
inc edi
mov dword [ebp - 0x14], edi
mov ecx, esi
call fcn.1000c89a
cmp byte [eax + edi], 0x29
jne 0x10001fd3
inc edi
mov dword [ebp - 0x14], edi
mov ecx, esi
call fcn.1000c89a
lea ecx, [ebp - 0x34]
mov edi, eax
call fcn.1000c89a
mov ecx, dword [ebp - 0x14]
mov cl, byte [edi + ecx]
mov edx, dword [ebp - 0x18]
inc dword [ebp - 0x18]
mov byte [eax + edx], cl
inc dword [ebp - 0x14]
mov ecx, esi
call fcn.1000112f
cmp dword [ebp - 0x14], eax
jb 0x10001fc1
mov edi, 0x10024198
lea ecx, [ebp - 0x34]
call fcn.1000c89a
mov ecx, dword [ebp - 0x18]
mov byte [eax + ecx], bl
mov ecx, esi
call fcn.1000112f
test eax, eax
jbe 0x10002059
mov ecx, edi
call fcn.1000112f
test eax, eax
je 0x10002049
push 0x2c
mov ecx, edi
call fcn.1000110f
lea ecx, [ebp - 0x34]
call fcn.1000c89a
push eax
mov ecx, edi
call fcn.100010f2
mov ecx, edi
call fcn.1000112f
test eax, eax
jne 0x1000207c
mov ecx, 0x10024174
call fcn.1000112f
test eax, eax
jne 0x1000207c
push str.No_target_email_address_or_newsgroup_was_specified.__You_must_give_an_email_naddress_or_usenet_newsgroup_to_send_messages_to.__Use__to___cc__or__bcc_option_nfor_email__or__groups_for_usenet._nAborting__nobody_to_send_messages_to._n
jmp 0x1000230a
cmp byte [0x1001d738], bl
mov byte [0x1001d010], bl
je 0x100020a2
push 0x10013748
push 0x1001d738
call dword [sym.imp.KERNEL32.dll_lstrcmpA]
test eax, eax
jne 0x100021b6
lea ecx, [ebp - 0x5c]
call fcn.1000112f
test eax, eax
je 0x100020dc
lea eax, [ebp - 0x5c]
mov esi, 0x100241c8
push eax
mov ecx, esi
mov byte [0x1001d010], 1
call fcn.1000111e
push dword [0x1001b084]
push 0x1001d738
call sub.MSVCRT.dll_strcpy
pop ecx
pop ecx
jmp 0x100021bb
mov esi, 0x100241bc
mov ecx, esi
call fcn.1000112f
test eax, eax
je 0x10002145
mov ecx, esi
call fcn.1000c89a
cmp byte [0x1001ccc2], bl
mov edi, eax
mov byte [0x1001d010], 1
mov esi, 0x100241c8
je 0x1000213b
mov dword [ebp - 0x14], ebx
cmp byte [edi], bl
je 0x100020c5
mov eax, dword [ebp - 0x14]
mov al, byte [edi + eax]
cmp al, 0x7c
mov ecx, esi
jne 0x10002128
push 0x1001361c
call fcn.100010f2
jmp 0x1000212e
push eax
call fcn.1000110f
inc dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
cmp byte [edi + eax], bl
jne 0x10002110
jmp 0x100020c5
push edi
mov ecx, esi
call fcn.100010f2
jmp 0x100020c5
push ebx
lea eax, [ebp - 0x18]
push eax
push 1
lea eax, [ebp - 0x14]
push eax
push 0xfffffffffffffff6
mov byte [0x1001d010], 1
mov dword [ebp - 0x18], ebx
mov dword [ebp - 0x14], ebx
call dword [sym.imp.KERNEL32.dll_GetStdHandle]
mov edi, dword [sym.imp.KERNEL32.dll_ReadFile]
push eax
call edi
mov esi, 0x100241c8
test eax, eax
je 0x100020c5
cmp dword [ebp - 0x18], ebx
je 0x100020c5
cmp dword [ebp - 0x14], 0x1a
je 0x100020c5
push dword [ebp - 0x14]
mov ecx, esi
call fcn.1000110f
push ebx
lea eax, [ebp - 0x18]
push eax
push 1
lea eax, [ebp - 0x14]
push eax
push 0xfffffffffffffff6
mov dword [ebp - 0x18], ebx
mov dword [ebp - 0x14], ebx
call dword [sym.imp.KERNEL32.dll_GetStdHandle]
push eax
call edi
jmp 0x10002173
mov esi, 0x100241c8
cmp byte [0x1001d010], bl
jne 0x100022c0
mov edi, 0x1001d738
push edi
lea ecx, [ebp - 0x1c]
call fcn.100011a7
test eax, eax
jne 0x10002204
push edi
push str.error_reading__s__aborting_n
call fcn.100013bb
push ebx
call fcn.100013bb
mov eax, dword [0x1001db54]
add esp, 0xc
cmp eax, ebx
je 0x100021fd
push eax
call sub.MSVCRT.dll_fclose
pop ecx
push 3
jmp 0x10001a20
lea ecx, [ebp - 0x1c]
call fcn.10001225
test eax, eax
lea ecx, [ebp - 0x1c]
jne 0x10002241
call fcn.10001191
push str.Sorry__I_can_only_mail_messages_from_disk_files..._n
call fcn.100013bb
push ebx
call fcn.100013bb
mov eax, dword [0x1001db54]
cmp eax, ebx
pop ecx
pop ecx
je 0x1000223a
push eax
call sub.MSVCRT.dll_fclose
pop ecx
push 4
jmp 0x10001a20
call fcn.10001234
mov ecx, esi
mov edi, eax
call fcn.10001048
cmp edi, ebx
mov ecx, esi
je 0x1000228a
lea eax, [edi + 1]
push eax
call fcn.10001074
push ebx
lea eax, [ebp - 0x28]
push eax
push edi
mov ecx, esi
call fcn.1000c89a
push eax
lea ecx, [ebp - 0x1c]
call fcn.1000123f
push edi
mov ecx, esi
mov dword [ebp - 0x18], eax
call fcn.10001149
mov ecx, esi
call fcn.10001133
mov byte [eax], bl
jmp 0x1000229b
push 0x10013278
call fcn.10001164
mov dword [ebp - 0x18], 1
lea ecx, [ebp - 0x1c]
call fcn.10001191
cmp dword [ebp - 0x18], ebx
jne 0x100022c0
push 0x1001d738
push str.error_reading__s__aborting_n
call fcn.100013bb
pop ecx
pop ecx
push 5
jmp 0x10001a20
cmp byte [0x1001ced9], bl
je 0x100022cc
push 8
jmp 0x100022ce
push 7
push 0x1001cedc
push 0x1001d730
push 0x100241c8
call fcn.10008967
add esp, 0x10
mov ecx, esi
call fcn.1000112f
mov esi, eax
lea eax, [ebp - 0x38]
push esi
push eax
call fcn.100058f6
mov edi, eax
cmp edi, ebx
pop ecx
pop ecx
je 0x1000232e
cmp dword [ebp - 0x38], ebx
jne 0x1000232e
push str.Sum_total_size_of_all_attachments_exceeds_4G_bytes.__This_is_too_much_to_be_nsending_with_SMTP_or_NNTP.__Please_try_sending_through_FTP_instead._nAborting__too_much_data_to_send._n
call fcn.100013bb
push ebx
call fcn.100013bb
mov eax, dword [0x1001db54]
cmp eax, ebx
pop ecx
pop ecx
je 0x10002327
push eax
call sub.MSVCRT.dll_fclose
pop ecx
push 0xc
jmp 0x10001a20
cmp byte [0x1001e061], bl
je 0x1000233d
mov byte [0x1001eaa2], 1
push dword [ebp - 0x38]
lea eax, [ebp - 0x66c]
push edi
push eax
lea eax, [ebp - 0x98]
push eax
lea eax, [ebp - 0x50]
push eax
lea eax, [ebp - 0x68]
push eax
push esi
call fcn.10008077
push dword [ebp - 0x38]
mov dword [ebp - 0x18], eax
push edi
lea eax, [ebp - 0x66c]
push eax
lea eax, [ebp - 0x98]
push eax
lea eax, [ebp - 0x50]
push eax
lea eax, [ebp - 0x68]
push eax
push esi
call fcn.100061bd
add esp, 0x38
cmp dword [ebp - 0x18], ebx
jne 0x1000238b
mov dword [ebp - 0x18], eax
call fcn.100058be
call fcn.10001292
cmp dword [0x1001d734], ebx
je 0x10002488
lea ecx, [ebp - 0x44]
call fcn.1000103b
xor esi, esi
cmp dword [ebp + 8], ebx
mov byte [ebp - 4], 0xa
jle 0x100023c6
mov eax, dword [ebp + 0xc]
push dword [eax + esi*4]
call sub.MSVCRT.dll_free
inc esi
cmp esi, dword [ebp + 8]
pop ecx
jl 0x100023b4
push dword [ebp + 0xc]
call sub.MSVCRT.dll_free
cmp dword [ebp - 0x18], ebx
pop ecx
lea ecx, [ebp - 0x74]
je 0x100023da
lea ecx, [ebp - 0x80]
call fcn.1000c89a
mov edi, eax
xor esi, esi
cmp edi, ebx
je 0x100023f0
push edi
call dword [sym.imp.KERNEL32.dll_lstrlenA]
mov esi, eax
lea eax, [esi*4 + 0x400]
push eax
lea ecx, [ebp - 0x44]
call fcn.10001074
cmp esi, ebx
je 0x10002421
push edi
push edi
push edi
push edi
push str.Expires:_Thu__01_Dec_1994_16:00:00_GMT_r_nPragma:_no_cache_r_nLocation:__s_r_n_r_n_html__body__r_n_a_href__s__Click_here_to_go_to__s__a__r_n_META_HTTP_EQUIV_REFRESH__CONTENT_0__URL_s___r_n__body___html__r_n
lea ecx, [ebp - 0x44]
call fcn.1000c89a
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x18
jmp 0x1000244b
cmp dword [ebp - 0x18], ebx
mov eax, str.Success
je 0x10002430
mov eax, str.Failure
push eax
push dword [ebp - 0x18]
lea ecx, [ebp - 0x44]
push str.Expires:_Thu__01_Dec_1994_16:00:00_GMT_r_nPragma:_no_cache_r_nContent_type:_text_html_r_n_r_n_html__body__r_nBlat_sending_message_result___d_:__s_r_n__body___html__r_n
call fcn.1000c89a
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
lea ecx, [ebp - 0x44]
call fcn.10001139
lea ecx, [ebp - 0x44]
call fcn.1000112f
push ebx
lea ecx, [ebp - 0x24]
push ecx
push eax
lea ecx, [ebp - 0x44]
mov dword [ebp - 0x24], eax
call fcn.1000c89a
push eax
push 0xfffffffffffffff5
call dword [sym.imp.KERNEL32.dll_GetStdHandle]
push eax
call dword [sym.imp.KERNEL32.dll_WriteFile]
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 6
call fcn.1000102d
push ebx
call fcn.100013bb
mov eax, dword [0x1001db54]
cmp eax, ebx
pop ecx
je 0x1000249f
push eax
call sub.MSVCRT.dll_fclose
pop ecx
push dword [ebp - 0x18]
mov dword [0x1001db54], ebx
call sub.MSVCRT.dll_abs
pop ecx
mov esi, eax
jmp 0x10001b10
push str.To_set_the_SMTP_servers_name_address_and_your_username_email_address_for_that_nserver_machine_do:_nblat__install__server_name__your_email_address_nor_use__server__server_name__and__f__your_email_address__n
call fcn.100013bb
mov dword [esp], str.aborting__nothing_sent_n
call fcn.100013bb
push ebx
call fcn.100013bb
pop ecx
jmp 0x10001afa
push ebx
call fcn.100013bb
mov eax, dword [0x1001db54]
cmp eax, ebx
pop ecx
je 0x100024ee
push eax
call sub.MSVCRT.dll_fclose
pop ecx
mov esi, edi
jmp 0x10001b0b