Function at 0x4020d1
Capabilities:
Create thread
Delete file
Print debug messages

Disassembly:
mov eax, 0x4128b3
call fcn.004066bc
sub esp, 0xf8
mov eax, dword [ebp + 8]
push ebx
push esi
push edi
xor ebx, ebx
mov dword [ebp - 0x10], esp
mov dword [ebp - 0x14], ebx
mov dword [ebp - 4], ebx
mov dword [0x418348], eax
call dword [sym.imp.COMCTL32.dll_InitCommonControls]
push str.riched32.dll
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
push ebx
push ebx
lea ecx, [ebp - 0x38]
call fcn.00403e3c
mov ecx, dword [ebp + 0x10]
push 1
pop esi
mov byte [ebp - 4], 1
call fcn.00405be0
mov edx, esi
mov cl, 0x75
call fcn.00405b0e
cmp eax, ebx
jne 0x40214d
and byte [ebp - 4], 0
lea ecx, [ebp - 0x38]
call fcn.0040281b
xor eax, eax
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
leave
ret 0x10
mov edi, 0x4183f8
push edi
mov ecx, 0x4182d8
call fcn.004030f6
xor edx, edx
mov cl, 0x71
mov dword [0x418360], ebx
call fcn.00405b0e
cmp eax, ebx
je 0x402176
mov dword [0x418360], esi
xor edx, edx
mov cl, 0x78
mov dword [0x418304], ebx
call fcn.00405b0e
cmp eax, ebx
je 0x402253
push ebx
push ebx
push ebx
push 0x68
push dword [0x418348]
call dword [sym.imp.USER32.dll_CreateDialogParamA]
lea ecx, [ebp - 0x2c]
mov esi, eax
call fcn.00404476
push str.dxdiag.xml
mov edx, eax
lea ecx, [ebp - 0x20]
mov byte [ebp - 4], 2
call fcn.0040299e
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 4
call fcn.00403098
lea ecx, [ebp - 0x20]
call fcn.00403384
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
push str.dxdiag__x__.
lea ecx, [ebp - 0x44]
call fcn.00403014
lea eax, [ebp - 0x20]
push eax
lea edx, [ebp - 0x44]
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], 5
call fcn.00402bb2
push ebx
push 1
pop edx
mov ecx, eax
mov byte [ebp - 4], 6
call fcn.00405bec
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], 5
call fcn.00403098
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 4
call fcn.00403098
lea ecx, [ebp - 0x20]
call fcn.00403d3a
cmp eax, ebx
mov dword [0x418304], eax
je 0x402240
lea ecx, [ebp - 0x20]
call fcn.00403384
push ebx
push eax
lea ecx, [ebp - 0x38]
call fcn.00403e7b
push esi
call dword [sym.imp.USER32.dll_DestroyWindow]
lea ecx, [ebp - 0x20]
mov byte [ebp - 4], 1
call fcn.00403098
mov esi, 0x418338
push str..._files_reports_
mov ecx, esi
call fcn.004030a6
push 1
pop edx
mov cl, 0x64
call fcn.00405b0e
cmp eax, ebx
je 0x40227a
push edi
mov ecx, esi
call fcn.004030f6
mov esi, 0x4182f8
push str.A_report_has_been_generated.
mov ecx, esi
call fcn.004030a6
push 1
pop edx
mov cl, 0x68
call fcn.00405b0e
cmp eax, ebx
je 0x4022a1
push edi
mov ecx, esi
call fcn.004030f6
call fcn.00402f73
mov ecx, eax
call fcn.0040388d
push 0xa
push 0x30
push 0xa
mov edx, eax
lea ecx, [ebp - 0x2c]
call fcn.00403626
push eax
mov ecx, 0x418298
mov byte [ebp - 4], 7
call fcn.004030f6
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 1
call fcn.00403098
xor ecx, ecx
call fcn.00405b91
cmp eax, ebx
je 0x4022f9
mov ecx, 0x4183f8
call fcn.00403384
push ebx
push eax
lea ecx, [ebp - 0x38]
call fcn.00403e7b
jmp 0x4022d8
mov edi, dword [ebp - 0x38]
mov ebx, 0x418328
cmp edi, dword [ebp - 0x34]
je 0x4025f0
push edi
lea ecx, [ebp - 0x44]
call fcn.00403086
lea edx, [ebp - 0x44]
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 8
call fcn.00403d63
push 0x416424
mov edx, 0x418298
lea ecx, [ebp - 0xb0]
mov byte [ebp - 4], 9
call fcn.0040299e
lea ecx, [ebp - 0x2c]
push ecx
mov edx, eax
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], 0xa
call fcn.00402a4e
lea ecx, [ebp - 0xb0]
mov byte [ebp - 4], 0xc
call fcn.00403098
push 0x416420
lea ecx, [ebp - 0x88]
call fcn.00403014
lea ecx, [ebp - 0x58]
mov byte [ebp - 4], 0xd
call fcn.00402ab4
mov dword [ebp - 0x58], 0x413220
lea eax, [ebp - 0x88]
push eax
lea eax, [ebp - 0x44]
push eax
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 0xe
call fcn.00402e8f
mov dword [ebp - 0x58], 0x4131f4
mov dword [ebp - 0x4c], 0x413210
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], 0x10
call fcn.00403098
lea ecx, [ebp - 0x4c]
call fcn.00403be4
push eax
lea ecx, [ebp - 0x20]
call fcn.00402732
mov esi, dword [ebp - 0x20]
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 0x11
call fcn.00403be4
push eax
push esi
lea ecx, [ebp - 0x4c]
call fcn.00403acd
push str.xxxwf01324354657687980wfyyy
lea ecx, [ebp - 0xc8]
call fcn.00403014
push eax
mov edx, 0x416114
lea ecx, [ebp - 0x104]
mov byte [ebp - 4], 0x12
call fcn.004029f6
mov esi, 0x416110
push esi
mov edx, eax
lea ecx, [ebp - 0xec]
mov byte [ebp - 4], 0x13
call fcn.0040299e
mov byte [ebp - 4], 0x14
mov edx, eax
mov ecx, ebx
call fcn.0040162c
lea ecx, [ebp - 0xec]
mov byte [ebp - 4], 0x13
call fcn.00403098
lea ecx, [ebp - 0x104]
mov byte [ebp - 4], 0x12
call fcn.00403098
lea ecx, [ebp - 0xc8]
mov byte [ebp - 4], 0x11
call fcn.00403098
call fcn.00402f73
mov ecx, eax
call fcn.0040388d
push 0xa
mov edx, eax
lea ecx, [ebp - 0x70]
call fcn.004035b3
push eax
mov edx, str.Content_Disposition:_form_data__name_
lea ecx, [ebp - 0xd4]
mov byte [ebp - 4], 0x15
call fcn.004029f6
push str.___filename_
mov edx, eax
lea ecx, [ebp - 0xbc]
mov byte [ebp - 4], 0x16
call fcn.0040299e
lea ecx, [ebp - 0x64]
push ecx
mov edx, eax
lea ecx, [ebp - 0xe0]
mov byte [ebp - 4], 0x17
call fcn.00402a4e
push 0x4160e4
mov edx, eax
lea ecx, [ebp - 0xf8]
mov byte [ebp - 4], 0x18
call fcn.0040299e
mov edx, eax
mov ecx, ebx
mov byte [ebp - 4], 0x19
call fcn.0040162c
lea ecx, [ebp - 0xf8]
mov byte [ebp - 4], 0x18
call fcn.00403098
lea ecx, [ebp - 0xe0]
mov byte [ebp - 4], 0x17
call fcn.00403098
lea ecx, [ebp - 0xbc]
mov byte [ebp - 4], 0x16
call fcn.00403098
lea ecx, [ebp - 0xd4]
mov byte [ebp - 4], 0x15
call fcn.00403098
lea ecx, [ebp - 0x70]
mov byte [ebp - 4], 0x11
call fcn.00403098
push str.Content_Type:_application_octet_stream_r_n
lea ecx, [ebp - 0x98]
call fcn.00403014
lea edx, [ebp - 0x98]
mov ecx, ebx
mov byte [ebp - 4], 0x1a
call fcn.0040162c
lea ecx, [ebp - 0x98]
mov byte [ebp - 4], 0x11
call fcn.00403098
push esi
lea ecx, [ebp - 0x7c]
call fcn.00403014
mov byte [ebp - 4], 0x1b
lea edx, [ebp - 0x7c]
mov ecx, ebx
call fcn.0040162c
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], 0x11
call fcn.00403098
mov esi, dword [ebp - 0x20]
cmp esi, dword [ebp - 0x1c]
je 0x40257c
push esi
mov ecx, ebx
call fcn.004027e0
inc esi
jmp 0x40256c
push 0x416110
lea ecx, [ebp - 0xa4]
call fcn.00403014
lea edx, [ebp - 0xa4]
mov ecx, ebx
mov byte [ebp - 4], 0x1c
call fcn.0040162c
lea ecx, [ebp - 0xa4]
mov byte [ebp - 4], 0x11
call fcn.00403098
lea ecx, [ebp - 0x20]
mov byte [ebp - 4], 0x10
call fcn.00402aa6
lea ecx, [ebp - 0x58]
mov byte [ebp - 4], 0xc
call fcn.00402f2d
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], 9
call fcn.00403098
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 8
call fcn.00403098
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 1
call fcn.00403098
add edi, 0xc
jmp 0x402301
xor esi, esi
cmp dword [0x418360], esi
je 0x4026c2
mov esi, dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
push str.Sending_in_quiet_mode_n
call esi
call fcn.0040190c
xor edi, edi
push edi
push edi
push 0x401a8a
call fcn.004066db
add esp, 0xc
push edi
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [0x418324]
cmp eax, edi
je 0x402621
push 1
pop edi
cmp eax, edi
jne 0x40263f
mov eax, str.Send_ok_n
jmp 0x402675
push str.Send_failed:_HTTP_status_code__._n
lea ecx, [ebp - 0x2c]
call fcn.00403014
or dword [ebp - 0x14], edi
push 0x418350
lea edx, [ebp - 0x2c]
lea ecx, [ebp - 0x70]
mov byte [ebp - 4], 0x1d
call fcn.00402c53
or dword [ebp - 0x14], 2
mov ecx, eax
mov dword [ebp - 4], 0x1e
call fcn.00403384
push eax
call esi
test byte [ebp - 0x14], 2
mov dword [ebp - 4], 0x1d
je 0x402691
and dword [ebp - 0x14], 0xfffffffd
lea ecx, [ebp - 0x70]
call fcn.00403098
test byte [ebp - 0x14], 1
mov dword [ebp - 4], edi
je 0x4026a2
lea ecx, [ebp - 0x2c]
call fcn.00403098
xor eax, eax
cmp dword [0x418324], edi
lea ecx, [ebp - 0x38]
sete al
and byte [ebp - 4], 0
mov esi, eax
call fcn.0040281b
mov eax, esi
jmp 0x40213c
push str.MS_Sans_Serif
push esi
push esi
push esi
push esi
push 1
push esi
push esi
push esi
push 0x2bc
push esi
push esi
push esi
push 8
call dword [sym.imp.GDI32.dll_CreateFontA]
push esi
push 0x401ed6
push esi
push 0x65
push dword [0x418348]
mov dword [0x4182e4], eax
call dword [sym.imp.USER32.dll_DialogBoxParamA]
push dword [0x4182e4]
call dword [sym.imp.GDI32.dll_DeleteObject]
jmp 0x40212e