Function at 0x100401a0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push 0xffffffffffffffff
push 0x1009932a
mov eax, dword fs:[0]
push eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x100cd8ec]
xor eax, esp
push eax
lea eax, [esp + 0x14]
mov dword fs:[0], eax
mov esi, ecx
mov eax, dword [esi + 0x24]
push str._CORE__XWCipherMng::downloadFileSingleEx____START__
push eax
call fcn.10077b60
mov edi, dword [esp + 0x2c]
mov ecx, dword [esi + 0x24]
push edi
push str._CORE__XWCipherMng::downloadFileSingleEx___IN_aXaddr______________:___s_
push ecx
call fcn.10077b60
mov edx, dword [esp + 0x3c]
mov eax, dword [esi + 0x24]
push edx
push str._CORE__XWCipherMng::downloadFileSingleEx___IN_aRequestURI_________:___s_
push eax
call fcn.10077b60
mov ebp, dword [esp + 0x50]
add esp, 0x20
mov ecx, ebp
call fcn.1006ebd0
mov ecx, dword [esi + 0x24]
push eax
push str._CORE__XWCipherMng::downloadFileSingleEx___IN_aDownloadFile_______:___s_
push ecx
call fcn.10077b60
mov ebx, dword [esp + 0x40]
mov edx, dword [esi + 0x24]
push ebx
push str._CORE__XWCipherMng::downloadFileSingleEx___IN_aFileIndex__________:___d_
push edx
call fcn.10077b60
mov eax, dword [esp + 0x50]
mov ecx, dword [esi + 0x24]
push eax
push str._CORE__XWCipherMng::downloadFileSingleEx___IN_aFileCount__________:___d_
push ecx
call fcn.10077b60
mov edx, dword [esp + 0x60]
mov eax, dword [esi + 0x24]
push edx
push str._CORE__XWCipherMng::downloadFileSingleEx___IN_aSID______________:___s_
push eax
call fcn.10077b60
mov ecx, dword [esi + 0x18]
mov edx, dword [ecx]
mov eax, dword [edx + 0x30]
add esp, 0x30
push edi
call eax
push 0x10a0
mov edi, eax
call sub.MSVCR80.dll_void____cdecl_operator_new_unsigned_int_
add esp, 4
mov dword [esp + 0x24], eax
xor ecx, ecx
cmp eax, ecx
mov dword [esp + 0x1c], ecx
je 0x10040289
push edi
mov ecx, eax
call fcn.1003a2b0
mov dword [esp + 0x24], eax
jmp 0x1004028d
mov dword [esp + 0x24], ecx
push 0xb8
mov dword [esp + 0x20], 0xffffffff
call sub.MSVCR80.dll_void____cdecl_operator_new_unsigned_int_
mov edi, eax
add esp, 4
mov dword [esp + 0x30], edi
test edi, edi
mov dword [esp + 0x1c], 1
je 0x100402d5
mov ecx, ebp
call fcn.1006ebf0
push eax
mov ecx, ebp
call fcn.1006ebe0
push eax
push 0
push 0
push 0x20
mov ecx, edi
call fcn.10076310
mov ebp, eax
jmp 0x100402d7
xor ebp, ebp
mov ecx, dword [esp + 0x24]
push ecx
mov ecx, ebp
mov dword [esp + 0x20], 0xffffffff
call fcn.10075a30
mov edx, dword [esp + 0x40]
mov dword [ebp], edx
mov eax, ebx
cdq
push edx
push eax
mov ecx, ebp
call fcn.10075f00
mov eax, dword [esp + 0x38]
cdq
push edx
push eax
mov ecx, ebp
call fcn.10075f20
push 0x8c
call sub.MSVCR80.dll_void____cdecl_operator_new_unsigned_int_
mov edi, eax
add esp, 4
mov dword [esp + 0x38], edi
test edi, edi
mov ebx, 2
mov dword [esp + 0x1c], ebx
je 0x1004036d
push ebp
push 0
push 0
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x58], esp
push 0x100a562c
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const__]
mov eax, dword [esp + 0x50]
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x78], esp
push eax
mov byte [esp + 0x64], 3
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const__]
mov ecx, edi
mov byte [esp + 0x60], bl
call fcn.100758b0
mov ebx, eax
jmp 0x1004036f
xor ebx, ebx
mov eax, dword [esp + 0x3c]
or edi, 0xffffffff
test eax, eax
mov dword [esp + 0x1c], edi
je 0x1004038d
mov ecx, dword [esp + 0x2c]
push eax
push ecx
mov ecx, ebx
call fcn.10074f90
jmp 0x10040399
mov edx, dword [esp + 0x2c]
push edx
mov ecx, ebx
call fcn.100749b0
test eax, eax
jne 0x100403e9
mov ecx, dword [esp + 0x24]
mov eax, dword [ecx]
mov edx, dword [eax + 0x20]
call edx
cmp eax, 0xe
ja case.0x100403b4.1
movzx eax, byte [eax + 0x10040488]
jmp dword [eax*4 + 0x1004046c]
xor edi, edi
jmp 0x1004040b
push 0x16e380f
jmp 0x100403fc
push 0x16e3810
jmp 0x100403fc
push 0x16e3811
jmp 0x100403fc
push 0x16e3812
jmp 0x100403fc
push 0x16e3813
jmp 0x100403fc
push 0x16e3814
jmp 0x100403fc
cmp eax, 0xfff0bdc0
jne 0x100403f7
push 0x16e37fd
jmp 0x10040401
push 0x16e37ff
mov edi, 0xfffffffe
mov ecx, dword [esi + 0x20]
mov edx, dword [ecx]
mov eax, dword [edx + 0xc]
call eax
mov ecx, dword [esp + 0x24]
test ecx, ecx
je 0x1004041b
mov edx, dword [ecx]
mov eax, dword [edx]
push 1
call eax
mov ecx, ebp
call fcn.10075f90
push ebp
call sub.MSVCR80.dll_void___cdecl_operator_delete_void__
add esp, 4
test ebx, ebx
je 0x1004043f
mov ecx, ebx
call fcn.100756b0
push ebx
call sub.MSVCR80.dll_void___cdecl_operator_delete_void__
add esp, 4
mov ecx, dword [esi + 0x24]
push edi
push str._CORE__XWCipherMng::downloadFileSingleEx____COMPLETE___d___
push ecx
call fcn.10077b60
add esp, 0xc
mov eax, edi
mov ecx, dword [esp + 0x14]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret 0x20