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

Disassembly:
push 0xffffffffffffffff
push 0x10120453
mov eax, dword fs:[0]
push eax
sub esp, 0x1a8
mov eax, dword [0x1014d0cc]
xor eax, esp
mov dword [esp + 0x1a0], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x1014d0cc]
xor eax, esp
push eax
lea eax, [esp + 0x1bc]
mov dword fs:[0], eax
mov ebx, dword [esp + 0x1d0]
mov ebp, dword [esp + 0x1cc]
xor esi, esi
cmp ebx, esi
jne 0x100c5195
call dword [sym.imp.MSVCR80.dll__invalid_parameter_noinfo]
mov edi, dword [esp + 0x1d4]
cmp edi, dword [ebx + 4]
jne 0x100c51a7
call dword [sym.imp.MSVCR80.dll__invalid_parameter_noinfo]
cmp byte [edi + 0x60], 0
jne 0x100c5a42
mov ecx, dword [ebp + 0x4f4]
mov eax, dword [ebp + 0xb4]
and ecx, 0xffffff
cmp eax, ecx
jae 0x100c5a42
mov eax, dword [ebp + 0x2e0]
mov ecx, dword [eax + 0x9d4]
cmp ecx, dword [eax + 0x24c]
jge 0x100c5a42
lea ecx, [esp + 0xe8]
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_void_]
lea ecx, [esp + 0x120]
mov dword [esp + 0x1c4], esi
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_void_]
lea ecx, [esp + 0xcc]
mov byte [esp + 0x1c4], 1
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_void_]
lea ecx, [esp + 0x104]
mov byte [esp + 0x1c4], 2
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_void_]
mov byte [esp + 0x1c4], 3
mov dword [esp + 0x18], esi
call fcn.1010d600
cmp edi, dword [ebx + 4]
mov dword [esp + 0x1c], eax
lea esi, [esp + 0x18]
jne 0x100c5252
call dword [sym.imp.MSVCR80.dll__invalid_parameter_noinfo]
sub esp, 0x1c
lea eax, [edi + 8]
mov ecx, esp
mov dword [esp + 0x30], esp
push eax
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const__]
lea edx, [esp + 0x158]
push edx
mov ecx, esi
call fcn.10064500
add esp, 0x20
mov byte [esp + 0x1c4], 4
lea ecx, [esp + 0xe8]
mov dword [esp + 0x2c], ecx
lea edx, [esp + 0x120]
lea ecx, [esp + 0xcc]
mov dword [esp + 0x30], edx
mov dword [esp + 0x34], ecx
lea edx, [esp + 0x28]
lea ecx, [esp + 0x104]
lea esi, [esp + 0x2c]
mov dword [esp + 0x38], edx
mov dword [esp + 0x3c], ecx
call fcn.1003b4b0
lea edx, [esp + 0x13c]
push edx
mov byte [esp + 0x1c8], 3
call fcn.1003a6f0
mov eax, dword [esp + 0x18]
neg eax
sbb eax, eax
test eax, fcn.1009bff0
je 0x100c537d
mov esi, dword [ebp + 0x2e0]
add esi, 0x368
call fcn.100d5970
test al, al
je 0x100c536f
lea ecx, [esp + 0x20]
push ecx
mov ecx, ebp
call fcn.100cc330
mov dword [esp + 0x14], eax
lea edx, [esp + 0x18]
push edx
lea esi, [esp + 0x1d4]
mov byte [esp + 0x1c8], 5
call fcn.100225e0
push eax
mov eax, dword [esp + 0x1c]
push eax
lea ecx, [esp + 0x70]
push ecx
call fcn.100b84f0
mov byte [esp + 0x1c4], 6
mov ecx, dword [ebp + 0x2e0]
push eax
add ecx, 0x368
call fcn.1000dc40
lea edx, [esp + 0x64]
push edx
mov byte [esp + 0x1c8], 5
call fcn.100b8820
lea eax, [esp + 0x20]
mov byte [esp + 0x1c4], 3
call fcn.100d2230
push edi
push ebx
mov eax, ebp
call fcn.100c5090
jmp 0x100c59eb
lea esi, [esp + 0x1d0]
call fcn.100225e0
test byte [eax + 0x9c], 8
je 0x100c5445
mov esi, dword [ebp + 0x2e0]
add esi, 0x368
call fcn.100d5970
test al, al
je 0x100c5437
lea eax, [esp + 0x20]
push eax
mov ecx, ebp
call fcn.100cc330
mov ebx, eax
mov byte [esp + 0x1c4], 7
call fcn.1001cc10
lea ecx, [esp + 0x18]
push ecx
lea esi, [esp + 0x1d4]
mov dword [esp + 0x1c], 0x5b
mov dword [esp + 0x20], eax
call fcn.100225e0
push eax
push ebx
lea edx, [esp + 0x70]
push edx
call fcn.100b84f0
mov byte [esp + 0x1c4], 8
mov ecx, dword [ebp + 0x2e0]
push eax
add ecx, 0x368
call fcn.1000dc40
lea eax, [esp + 0x64]
push eax
mov byte [esp + 0x1c8], 7
call fcn.100b8820
lea eax, [esp + 0x20]
mov byte [esp + 0x1c4], 3
call fcn.100d2230
mov ebx, dword [esp + 0x1d0]
push edi
push ebx
mov eax, ebp
call fcn.100c5090
jmp 0x100c59eb
lea ecx, [esp + 0xe8]
push str.http
push ecx
call dword [sym.imp.MSVCP80.dll_bool___cdecl_std::operator__char__struct_std::char_traits_char___class_std::allocator_char___class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const___char_const__]
add esp, 8
test al, al
je 0x100c5505
mov esi, dword [ebp + 0x2e0]
add esi, 0x368
call fcn.100d5970
test al, al
je 0x100c54f7
push 0x18
lea esi, [esp + 0x24]
call fcn.10034120
lea edx, [esp + 0x18]
push edx
mov ecx, ebp
call fcn.100cc330
mov dword [esp + 0x14], eax
mov eax, esi
push eax
lea esi, [esp + 0x1d4]
mov byte [esp + 0x1c8], 9
call fcn.100225e0
mov ecx, dword [esp + 0x18]
push eax
push ecx
lea edx, [esp + 0x70]
push edx
call fcn.100b84f0
mov byte [esp + 0x1c4], 0xa
mov ecx, dword [ebp + 0x2e0]
push eax
add ecx, 0x368
call fcn.1000dc40
lea eax, [esp + 0x64]
push eax
mov byte [esp + 0x1c8], 9
call fcn.100b8820
lea eax, [esp + 0x18]
mov byte [esp + 0x1c4], 3
call fcn.100d2230
push edi
push ebx
mov eax, ebp
call fcn.100c5090
jmp 0x100c59eb
cmp dword [esp + 0xe0], 0
jne 0x100c559d
mov esi, dword [ebp + 0x2e0]
add esi, 0x368
call fcn.100d5970
test al, al
je 0x100c5437
push 0x1f
lea esi, [esp + 0x24]
call fcn.10034120
lea ecx, [esp + 0x18]
push ecx
mov ecx, ebp
call fcn.100cc330
mov ebx, eax
mov edx, esi
push edx
lea esi, [esp + 0x1d4]
mov byte [esp + 0x1c8], 0xb
call fcn.100225e0
push eax
push ebx
lea eax, [esp + 0x70]
push eax
call fcn.100b84f0
mov byte [esp + 0x1c4], 0xc
mov ecx, dword [ebp + 0x2e0]
push eax
add ecx, 0x368
call fcn.1000dc40
lea ecx, [esp + 0x64]
push ecx
mov byte [esp + 0x1c8], 0xb
call fcn.100b8820
lea eax, [esp + 0x18]
jmp 0x100c5423
mov eax, dword [esp + 0x28]
test eax, eax
jne 0x100c5633
mov esi, dword [ebp + 0x2e0]
add esi, 0x368
call fcn.100d5970
test al, al
je 0x100c5437
push 0x20
lea esi, [esp + 0x24]
call fcn.10034120
lea edx, [esp + 0x18]
push edx
mov ecx, ebp
call fcn.100cc330
mov ebx, eax
mov eax, esi
push eax
lea esi, [esp + 0x1d4]
mov byte [esp + 0x1c8], 0xd
call fcn.100225e0
push eax
push ebx
lea ecx, [esp + 0x70]
push ecx
call fcn.100b84f0
mov byte [esp + 0x1c4], 0xe
mov ecx, dword [ebp + 0x2e0]
push eax
add ecx, 0x368
call fcn.1000dc40
lea edx, [esp + 0x64]
push edx
mov byte [esp + 0x1c8], 0xd
call fcn.100b8820
lea eax, [esp + 0x18]
jmp 0x100c5423
mov edx, dword [ebp + 0x2e0]
movzx eax, ax
mov dword [esp + 0x14], eax
add edx, 0x9f0
lea eax, [esp + 0x14]
call fcn.1005b690
test al, 1
je 0x100c56e1
mov esi, dword [ebp + 0x2e0]
add esi, 0x368
call fcn.100d5970
test al, al
je 0x100c5437
push 0x21
lea esi, [esp + 0x24]
call fcn.10034120
lea ecx, [esp + 0x18]
push ecx
mov ecx, ebp
call fcn.100cc330
mov ebx, eax
mov edx, esi
push edx
lea esi, [esp + 0x1d4]
mov byte [esp + 0x1c8], 0xf
call fcn.100225e0
push eax
push ebx
lea eax, [esp + 0x70]
push eax
call fcn.100b84f0
mov byte [esp + 0x1c4], 0x10
mov ecx, dword [ebp + 0x2e0]
push eax
add ecx, 0x368
call fcn.1000dc40
lea ecx, [esp + 0x64]
push ecx
mov byte [esp + 0x1c8], 0xf
call fcn.100b8820
lea eax, [esp + 0x18]
jmp 0x100c5423
lea esi, [esp + 0x1d0]
call fcn.100225e0
add eax, 0x5c
call fcn.1001bee0
test ax, ax
je 0x100c5722
push edi
push ebx
call fcn.100225e0
sub esp, 0x1c
add eax, 0x5c
mov edi, esp
mov esi, eax
mov ecx, 7
rep movsd dword es:[edi], dword [esi]
mov ecx, ebp
mov dword [esp + 0x38], esp
call fcn.100c6330
jmp 0x100c59eb
mov ebx, dword [ebp + 0x2e0]
mov eax, dword [ebx + 0xb98]
add ebx, 0xb40
cmp eax, 4
mov dword [esp + 0x14], ebx
je 0x100c58cf
cmp eax, 5
je 0x100c58cf
cmp byte [ebx + 0x5c], 0
je 0x100c57a6
cmp eax, 2
je 0x100c575a
cmp eax, 3
jne 0x100c57a6
mov edx, dword [esp + 0x1d0]
mov ecx, dword [esp + 0x28]
push edi
xor eax, eax
push edx
sub esp, 0x1c
mov esi, esp
lea edi, [esp + 0x68]
mov dword [esp + 0x68], eax
mov dword [esp + 0x6c], eax
mov dword [esp + 0x70], eax
mov dword [esp + 0x74], eax
mov dword [esp + 0x78], eax
mov dword [esp + 0x7c], eax
mov dword [esp + 0x80], eax
mov dword [esp + 0x38], esp
call fcn.10015370
mov ecx, ebp
call fcn.100c6330
jmp 0x100c59eb
lea esi, [esp + 0x1d0]
call fcn.100225e0
mov byte [eax + 0x58], 1
mov eax, dword [esp + 0x28]
cdq
push edx
push eax
lea eax, [esp + 0xbc]
push eax
call fcn.100399f0
mov ecx, dword [eax]
mov dword [esp + 0x38], ecx
mov edx, dword [eax + 4]
mov dword [esp + 0x3c], edx
mov ecx, dword [eax + 8]
mov dword [esp + 0x40], ecx
mov edx, dword [eax + 0xc]
mov dword [esp + 0x44], edx
mov ecx, dword [eax + 0x10]
mov dword [esp + 0x48], ecx
movzx edx, byte [eax + 0x14]
add esp, 0xc
lea eax, [esp + 0x2c]
push eax
lea ecx, [esp + 0x48]
mov byte [esp + 0x44], dl
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__]
lea ebx, [esp + 0x44]
lea ecx, [esp + 0xcc]
lea esi, [esp + 0x13c]
mov byte [esp + 0x1c4], 0x15
call fcn.10045890
mov ecx, ebx
mov byte [esp + 0x1c4], 0x17
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov ecx, dword [esp + 0x1d0]
push edi
push ecx
sub esp, 8
lea ebx, [ebp + 0x1c]
mov edi, esp
mov esi, 0x100c6050
mov dword [esp + 0x24], esp
call fcn.100d2250
xor eax, eax
push eax
push esi
sub esp, 0x1c
mov eax, esp
mov dword [esp + 0x48], esp
call fcn.100222d0
movzx edx, byte [0x10155709]
movzx eax, byte [0x1015570d]
push edx
push eax
lea ecx, [esp + 0xa0]
push ecx
call fcn.100d5b00
add esp, 0x40
mov byte [esp + 0x1c4], 0x18
mov ebp, dword [ebp + 0x2e0]
add ebp, 0x1160
lea edx, [esp + 0x13c]
push edx
mov edx, dword [ebp]
lea ecx, [ebp + 4]
push ecx
push edx
mov ecx, eax
call fcn.100d83e0
lea eax, [esp + 0x64]
mov byte [esp + 0x1c4], 0x17
call fcn.100e1610
lea eax, [esp + 0x13c]
push eax
jmp 0x100c59de
lea esi, [esp + 0x1d0]
call fcn.100225e0
mov byte [eax + 0x58], 1
mov eax, dword [ebx + 0x1c]
cdq
push edx
push eax
lea ecx, [esp + 0xbc]
push ecx
call fcn.100399f0
mov edx, dword [eax]
mov dword [esp + 0x38], edx
mov ecx, dword [eax + 4]
mov dword [esp + 0x3c], ecx
mov edx, dword [eax + 8]
mov dword [esp + 0x40], edx
mov ecx, dword [eax + 0xc]
mov dword [esp + 0x44], ecx
mov edx, dword [eax + 0x10]
mov dword [esp + 0x48], edx
movzx eax, byte [eax + 0x14]
add esp, 0xc
lea ecx, [esp + 0x2c]
push ecx
lea ecx, [esp + 0x68]
mov byte [esp + 0x44], al
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 byte [esp + 0x1c4], 0x11
mov ecx, dword [esp + 0x14]
lea ebx, [esp + 0x64]
lea esi, [esp + 0x13c]
call fcn.10045890
mov ecx, ebx
mov byte [esp + 0x1c4], 0x13
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov edx, dword [esp + 0x1d0]
push edi
push edx
sub esp, 8
lea ebx, [ebp + 0x1c]
mov edi, esp
mov esi, 0x100c5a70
mov dword [esp + 0x24], esp
call fcn.100d2250
movzx ecx, byte [0x1015570d]
xor eax, eax
push eax
movzx eax, byte [0x10155709]
push esi
push eax
push ecx
lea edx, [esp + 0x64]
push edx
call fcn.100d59b0
add esp, 0x24
mov byte [esp + 0x1c4], 0x14
mov ebp, dword [ebp + 0x2e0]
add ebp, 0x1160
lea ecx, [esp + 0x13c]
push ecx
mov ecx, dword [ebp]
lea edx, [ebp + 4]
push edx
push ecx
mov ecx, eax
call fcn.100d8380
lea eax, [esp + 0x44]
mov byte [esp + 0x1c4], 0x13
call fcn.100e1610
lea edx, [esp + 0x13c]
push edx
mov byte [esp + 0x1c8], 3
call fcn.10043670
lea ecx, [esp + 0x104]
mov byte [esp + 0x1c4], 2
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
lea ecx, [esp + 0xcc]
mov byte [esp + 0x1c4], 1
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
lea ecx, [esp + 0x120]
mov byte [esp + 0x1c4], 0
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
lea ecx, [esp + 0xe8]
mov dword [esp + 0x1c4], 0xffffffff
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov ecx, dword [esp + 0x1bc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x1a0]
xor ecx, esp
call fcn.1010defb
add esp, 0x1b4
ret 0xc