Function at 0x4161e4
Capabilities:
Check http status code
Create directory
Delete file
Move file
Write file on windows

Disassembly:
push 0x1a0
mov eax, 0x451725
call fcn.0043364b
mov edi, ecx
mov dword [ebp - 0x18c], edi
mov eax, dword [ebp + 8]
lea ecx, [ebp - 0x184]
mov dword [ebp - 0x1ac], eax
call fcn.00417939
and dword [ebp - 4], 0
lea ecx, [ebp - 0x184]
call fcn.00417a00
mov esi, 0x45ede0
push esi
lea ecx, [ebp - 0xa4]
call fcn.00404a24
push esi
lea ecx, [ebp - 0x8c]
mov byte [ebp - 4], 1
call fcn.00404a24
push 2
pop ebx
push esi
lea ecx, [ebp - 0x74]
mov byte [ebp - 4], bl
call fcn.00404a24
lea eax, [edi + 0xc]
mov byte [ebp - 4], 3
cmp dword [eax + 0x14], 8
jb 0x41625d
mov eax, dword [eax]
push eax
lea ecx, [ebp - 0xbc]
call fcn.00404a24
lea eax, [ebp - 0x74]
push eax
lea eax, [ebp - 0x8c]
push eax
lea eax, [ebp - 0xa4]
push eax
lea eax, [ebp - 0xbc]
push eax
mov byte [ebp - 4], 4
call fcn.004160f7
push 0
push 1
lea ecx, [ebp - 0xbc]
mov byte [ebp - 4], 3
call fcn.00404e3f
lea eax, [edi + 0x3c]
lea esi, [edi + 0x24]
push eax
mov edx, esi
lea ecx, [ebp - 0x44]
call fcn.004175f6
mov byte [ebp - 4], 5
lea edx, [ebp - 0x44]
lea ecx, [ebp - 0x2c]
mov dword [esp], 0x460c04
call fcn.00417658
pop ecx
mov byte [ebp - 4], 6
cmp dword [esi + 0x14], 8
jb 0x4162d2
mov esi, dword [esi]
xor edi, edi
push edi
push esi
call dword [sym.imp.KERNEL32.dll_CreateDirectoryW]
cmp dword [ebp - 0x18], 8
lea eax, [ebp - 0x2c]
cmovae eax, dword [ebp - 0x2c]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
lea eax, [ebp - 0x5c]
push eax
call fcn.004061ca
mov esi, edi
mov byte [ebp - 4], 7
push edi
mov dword [ebp - 0x194], edi
push edi
cmp dword [ebp - 0x4c], esi
je 0x41632d
cmp dword [ebp - 0x48], 8
lea eax, [ebp - 0x5c]
cmovae eax, dword [ebp - 0x5c]
push eax
push 3
push str.Mozilla_4.0__compatible___
cmp dword [ebp - 0x114], esi
je 0x416332
call dword [ebp - 0x180]
jmp 0x416338
push edi
push 1
jmp 0x416318
call dword [ebp - 0x148]
mov edi, eax
test edi, edi
je 0x416582
cmp dword [ebp - 0x78], 8
lea eax, [ebp - 0x8c]
cmovae eax, dword [ebp - 0x8c]
push 0x50
push eax
push edi
lea ecx, [ebp - 0x184]
call fcn.00417d62
mov ecx, eax
mov dword [ebp - 0x194], ecx
test ecx, ecx
jne 0x416376
push 3
pop ebx
jmp 0x416582
cmp dword [ebp - 0x60], 8
lea eax, [ebp - 0x74]
cmovae eax, dword [ebp - 0x74]
xor ebx, ebx
push ebx
push eax
push 0x460c48
push ecx
lea ecx, [ebp - 0x184]
call fcn.00417d95
mov esi, eax
test esi, esi
jne 0x4163a0
push 4
jmp 0x416370
push ebx
push ebx
push esi
lea ecx, [ebp - 0x184]
call fcn.00417eb9
test eax, eax
jne 0x4163b6
push 5
jmp 0x416370
push esi
lea ecx, [ebp - 0x184]
call fcn.00417eee
test eax, eax
jne 0x4163ca
push 6
jmp 0x416370
lea eax, [ebp - 0x19c]
push eax
lea eax, [ebp - 0x1a0]
push eax
push 0x20000013
push esi
lea ecx, [ebp - 0x184]
mov dword [ebp - 0x1a0], ebx
mov dword [ebp - 0x19c], 4
call fcn.00417f0d
mov ebx, dword [ebp - 0x1a0]
cmp ebx, 0xc8
jne 0x416582
and dword [ebp - 0x190], 0
lea eax, [ebp - 0x19c]
push eax
lea eax, [ebp - 0x190]
push eax
push 0x20000005
push esi
lea ecx, [ebp - 0x184]
call fcn.00417f0d
push 0x4000
call fcn.0042df38
and dword [ebp - 0x188], 0
and dword [ebp - 0x198], 0
mov ebx, eax
pop ecx
mov dword [ebp - 0x1a4], ebx
jmp 0x416533
push 0x4000
push 0
push ebx
call fcn.00435650
add esp, 0xc
cmp dword [ebp - 0x110], 0
je 0x416638
cmp dword [ebp - 0x114], 0
lea eax, [ebp - 0x188]
push eax
push 0x4000
push ebx
push esi
je 0x416493
call dword [ebp - 0x164]
jmp 0x416499
call dword [ebp - 0x130]
test eax, eax
je 0x416638
cmp dword [ebp - 0x188], 0
je 0x416631
cmp dword [ebp - 0x18], 8
lea eax, [ebp - 0x2c]
cmovae eax, dword [ebp - 0x2c]
push 0x460c50
push eax
call fcn.0042f200
pop ecx
pop ecx
mov dword [ebp - 0x1a8], eax
test eax, eax
je 0x41662d
push eax
push 1
push dword [ebp - 0x188]
push ebx
call fcn.0042f436
push dword [ebp - 0x1a8]
call fcn.0042f520
add esp, 0x14
push 0x4000
push 0
push ebx
call fcn.00435650
mov edx, dword [ebp - 0x198]
mov eax, dword [ebp - 0x18c]
add edx, dword [ebp - 0x188]
mov ecx, dword [eax + 8]
add esp, 0xc
mov dword [ebp - 0x198], edx
test ecx, ecx
je 0x41652b
mov eax, dword [ecx]
push edx
push dword [ebp - 0x190]
call dword [eax]
push 0xa
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [ebp - 0x18c]
cmp byte [eax + 4], 0
je 0x416457
xor ebx, ebx
inc ebx
push dword [ebp - 0x1a4]
call fcn.0042df00
cmp dword [ebp - 0x30], 8
lea eax, [ebp - 0x44]
cmovae eax, dword [ebp - 0x44]
pop ecx
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
cmp dword [ebp - 0x30], 8
lea ecx, [ebp - 0x44]
cmovae ecx, dword [ebp - 0x44]
cmp dword [ebp - 0x18], 8
lea eax, [ebp - 0x2c]
cmovae eax, dword [ebp - 0x2c]
push ecx
push eax
call dword [sym.imp.KERNEL32.dll_MoveFileW]
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, dword [ebp - 0x1ac]
mov dword [ecx], eax
test esi, esi
je 0x4165a0
push esi
lea ecx, [ebp - 0x184]
call fcn.00417f5e
mov eax, dword [ebp - 0x194]
test eax, eax
je 0x4165b6
push eax
lea ecx, [ebp - 0x184]
call fcn.00417f5e
test edi, edi
je 0x4165c6
push edi
lea ecx, [ebp - 0x184]
call fcn.00417f5e
lea ecx, [ebp - 0x184]
call fcn.00417a31
xor esi, esi
xor edi, edi
push esi
inc edi
push edi
lea ecx, [ebp - 0x5c]
call fcn.00404e3f
push esi
push edi
lea ecx, [ebp - 0x2c]
call fcn.00404e3f
push esi
push edi
lea ecx, [ebp - 0x44]
call fcn.00404e3f
push esi
push edi
lea ecx, [ebp - 0x74]
call fcn.00404e3f
push esi
push edi
lea ecx, [ebp - 0x8c]
call fcn.00404e3f
push esi
push edi
lea ecx, [ebp - 0xa4]
call fcn.00404e3f
lea ecx, [ebp - 0x184]
call fcn.004179d1
mov eax, ebx
call fcn.004335fa
ret 4
push 7
jmp 0x41663a
xor ebx, ebx
jmp 0x416546
push 8
pop ebx
jmp 0x416546