Function at 0x44d48c
Capabilities:
Check if file exists
Get file attributes

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x22c
push ebx
push esi
push 0x105
mov ebx, 0x466
push ebx
mov esi, ecx
call fcn.0044b07a
push eax
mov dword [esi + 0x2c], eax
call dword [sym.imp.KERNEL32.DLL_GetFileAttributesW]
mov dword [ebp - 0x24], eax
cmp eax, 0xffffffff
jne 0x44d4fb
mov eax, dword [esi + 0x2c]
cmp word [eax], 0
mov ecx, dword [0x4884e4]
jne 0x44d4d0
mov ecx, dword [0x4884cc]
push eax
push ecx
lea eax, [ebp - 0x20]
push eax
mov dword [ebp - 0x20], 1
mov dword [ebp - 0x1c], 0x30
call fcn.0043e3e2
add esp, 0xc
push ebx
mov ecx, esi
call fcn.0044d026
xor al, al
jmp 0x44d751
push edi
mov edi, 0x42d
push edi
mov ecx, esi
call fcn.0043ce9b
mov edx, str.http
mov ecx, eax
call fcn.0042cf96
test al, al
jne 0x44d543
push dword [0x4884d0]
lea eax, [ebp - 0x20]
push eax
mov dword [ebp - 0x20], 1
mov dword [ebp - 0x1c], 0x24
call fcn.0043e3e2
pop ecx
pop ecx
cmp eax, 6
je 0x44d543
push edi
jmp 0x44d6a9
xor edi, edi
inc edi
push edi
mov ecx, esi
mov byte [esi + 0x3e], 0
call fcn.0044c9ab
push 0x60
call fcn.00435115
pop ecx
test eax, eax
je 0x44d567
mov ecx, eax
call fcn.00416f6d
jmp 0x44d569
xor eax, eax
mov ecx, dword [esi + 0x2c]
and dword [esi + 0x34], 0
mov dword [esi + 0x20], eax
call fcn.00433bf4
mov ecx, eax
call fcn.00433ba7
test byte [ebp - 0x24], 0x10
mov dword [esi + 0x24], eax
je 0x44d696
push edi
push 5
lea edx, [ebp - 0x22c]
xor ecx, ecx
call fcn.00448a0a
test eax, eax
je 0x44d5fc
mov ecx, dword [esi + 0x2c]
lea eax, [ebp - 0x22c]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x44d5cf
test dx, dx
je 0x44d5cb
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x44d5cf
add eax, 4
add ecx, 4
test dx, dx
jne 0x44d5a9
xor eax, eax
jmp 0x44d5d4
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x44d5fc
push dword [0x4884e0]
lea eax, [ebp - 0x20]
push eax
mov dword [ebp - 0x20], edi
mov dword [ebp - 0x1c], 0x124
call fcn.0043e3e2
pop ecx
pop ecx
cmp eax, 6
jne 0x44d6a8
push dword [esi + 0x24]
mov ecx, dword [esi + 0x20]
mov byte [esi + 0x28], 1
call fcn.00416988
mov eax, dword [esi + 0x24]
test eax, eax
je 0x44d66a
cmp word [eax], 0
je 0x44d66a
mov ecx, esi
call fcn.0044c7c6
mov edi, eax
push edi
push 0
mov ecx, esi
call fcn.0044d29e
mov ecx, edi
mov byte [ebp - 1], al
call fcn.0043492c
cmp byte [ebp - 1], 0
je 0x44d6a8
xor edi, edi
inc edi
push dword [esi + 0x2c]
mov ecx, dword [esi + 0x20]
call fcn.00417a91
mov eax, dword [esi + 0x20]
mov ecx, dword [eax + 0x10]
or ecx, dword [eax + 0x14]
mov ecx, esi
jne 0x44d6bc
push ebx
call fcn.0044d026
push dword [0x4884c0]
mov dword [ebp - 0x20], edi
jmp 0x44d70b
push ebx
mov ecx, esi
call fcn.0044d026
push dword [esi + 0x2c]
lea eax, [ebp - 0x20]
push dword [0x4884e4]
mov dword [ebp - 0x20], edi
push eax
mov dword [ebp - 0x1c], 0x30
call fcn.0043e3e2
add esp, 0xc
jmp 0x44d71d
push dword [esi + 0x2c]
mov ecx, esi
mov byte [esi + 0x28], 0
call fcn.0044c8b9
test al, al
jne 0x44d6b2
push ebx
mov ecx, esi
call fcn.0044d026
jmp 0x44d71d
mov ecx, dword [esi + 0x20]
call fcn.00417041
jmp 0x44d63e
call fcn.0044c83f
mov edi, eax
mov eax, dword [esi + 0x20]
mov dword [esi + 0x30], edi
mov ecx, dword [eax + 0x10]
mov eax, dword [eax + 0x14]
push 0
add ecx, 0xffffffff
push edi
adc eax, 0xffffffff
push eax
push ecx
call fcn.00401400
inc eax
mov dword [esi + 0x34], eax
cmp eax, 0x10000
jb 0x44d721
cmp edi, 0x100000
jae 0x44d721
push 0x430
mov ecx, esi
call fcn.0044d026
push dword [0x4884e8]
mov dword [ebp - 0x20], 1
lea eax, [ebp - 0x20]
push eax
mov dword [ebp - 0x1c], 0x30
call fcn.0043e3e2
pop ecx
pop ecx
xor al, al
jmp 0x44d750
push 0
push ebx
mov ecx, esi
call fcn.0044b07a
mov edx, eax
mov ecx, 0x484be4
call fcn.004353e0
mov eax, dword [esi + 0x34]
imul eax, eax, 0x14
push eax
call fcn.00435115
pop ecx
mov ecx, esi
mov dword [esi + 0x44], eax
call fcn.0044d213
mov al, 1
pop edi
pop esi
pop ebx
leave
ret