Function at 0x10009e57
Capabilities:
Create thread

Disassembly:
push ebp
lea ebp, [esp - 0xe04]
sub esp, 0xe84
mov eax, dword [0x1007ef24]
xor eax, ebp
mov dword [ebp + 0xe00], eax
push ebx
mov ebx, dword [ebp + 0xe0c]
mov eax, dword [ebx]
cmp eax, 0x14
mov dword [ebp - 0x64], ecx
jae 0x10009e8a
xor eax, eax
jmp 0x1000a2cf
mov edx, dword [ebx + 4]
mov edx, dword [edx]
mov ecx, str.GET
cmp edx, dword [ecx]
jne 0x10009e83
mov ecx, dword [ebx + 4]
push esi
lea eax, [ecx + eax - 1]
mov cl, byte [eax]
mov esi, 0x1ff
push esi
mov byte [eax], 0
lea eax, [ebp + 0x981]
push 0
push eax
mov byte [ebp - 0x5d], cl
mov byte [ebp + 0x980], 0
call fcn.10042a90
push esi
lea eax, [ebp + 0xb81]
push 0
push eax
mov byte [ebp + 0xb80], 0
call fcn.10042a90
mov eax, dword [ebx + 4]
push 0x10064784
push eax
call fcn.10043620
mov esi, eax
add esp, 0x20
test esi, esi
je 0x10009f0d
add esi, 5
push 0x10064388
push esi
call fcn.10043620
test eax, eax
pop ecx
pop ecx
je 0x10009f0d
sub eax, esi
cmp eax, 0x200
jbe 0x10009f20
mov eax, dword [ebx + 4]
mov ecx, dword [ebx]
mov dl, byte [ebp - 0x5d]
mov byte [eax + ecx - 1], dl
xor eax, eax
jmp 0x1000a2ce
push edi
push eax
lea eax, [ebp + 0xb80]
push esi
push eax
call fcn.10043ac0
lea eax, [ebp + 0xb80]
push eax
call fcn.10011545
mov ecx, dword [ebp - 0x64]
add esp, 0x10
lea eax, [ebp + 0xb80]
push eax
call fcn.10006d0a
mov ecx, dword [ebp - 0x64]
lea eax, [ebp + 0xb80]
push eax
call fcn.10006ccb
push 7
pop ecx
mov edi, 0x100643b8
lea esi, [ebp + 0xb80]
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x10009f85
mov cl, byte [ebp + eax + 0xb87]
mov byte [ebp + eax + 0x980], cl
inc eax
test cl, cl
jne 0x10009f70
jmp 0x10009f9a
xor eax, eax
mov cl, byte [ebp + eax + 0xb80]
mov byte [ebp + eax + 0x980], cl
inc eax
test cl, cl
jne 0x10009f87
mov ecx, dword [ebp - 0x64]
lea eax, [ebp + 0x980]
push eax
call fcn.100093f0
test eax, eax
mov dword [ebp - 0x64], eax
je 0x1000a2bf
cmp dword [eax + 4], 0
je 0x1000a2bf
push 0x7f
lea eax, [ebp + 0xd81]
push 0
push eax
mov byte [ebp + 0xd80], 0
call fcn.10042a90
mov eax, dword [ebx + 4]
push 0x1006477c
push eax
call fcn.10043620
mov esi, eax
add esp, 0x14
test esi, esi
je 0x1000a041
add esi, 6
push 0x10063f40
push esi
call fcn.10043620
test eax, eax
pop ecx
pop ecx
je 0x1000a2bf
sub eax, esi
cmp eax, 0x6c
ja 0x1000a2bf
push eax
lea eax, [ebp + 0xd80]
push esi
push eax
call fcn.10043ac0
add esp, 0xc
lea eax, [ebp + 0xd80]
mov esi, 0x10081520
push eax
mov ecx, esi
call fcn.10006d0a
lea eax, [ebp + 0xd80]
push eax
mov ecx, esi
call fcn.10006ccb
push 0x3ff
lea eax, [ebp - 0x5b]
push 0
push eax
mov byte [ebp - 0x5c], 0
call fcn.10042a90
mov edi, dword [ebx + 4]
add edi, 5
push str._HTTP_1.
push edi
call fcn.10043620
add esp, 0x14
test eax, eax
je 0x1000a2bf
sub eax, edi
cmp eax, 0x3ec
ja 0x1000a2bf
push eax
lea eax, [ebp - 0x5c]
push edi
push eax
call fcn.10043ac0
push 0x5db
lea eax, [ebp + 0x3a5]
push 0
push eax
mov byte [ebp + 0x3a4], 0
call fcn.10042a90
lea eax, [ebp - 0x5c]
push eax
lea eax, [ebp + 0xd80]
push eax
lea eax, [ebp + 0x3a4]
push str.http:___s_s
push eax
call fcn.100436a6
mov edi, 0x8000
push edi
call fcn.1001e0bd
push edi
mov esi, eax
xor edi, edi
push edi
push esi
mov dword [ebp - 0x68], esi
call fcn.10042a90
lea eax, [ebp + 0x3a4]
mov edx, esi
mov ecx, eax
add esp, 0x38
mov byte [0x10081062], 1
mov dword [ebp - 0x80], edi
sub edx, ecx
mov cl, byte [eax]
mov byte [edx + eax], cl
inc eax
test cl, cl
jne 0x1000a0f2
lea eax, [ebp - 0x80]
push eax
push edi
push esi
push 0x1000934c
push edi
push edi
call dword [sym.imp.KERNEL32.dll_CreateThread]
push 0xffffffffffffffff
push eax
mov dword [ebp - 0x6c], eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
cmp dword [ebp - 0x6c], edi
je 0x1000a129
push dword [ebp - 0x6c]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp byte [esi], 0
jne 0x1000a14d
mov eax, dword [ebx + 4]
mov ecx, dword [ebx]
mov dl, byte [ebp - 0x5d]
push esi
mov byte [eax + ecx - 1], dl
call fcn.1001e0b8
pop ecx
mov byte [0x10081062], 0
jmp 0x1000a2cb
mov edi, str.namesdo_rt_value_
push edi
push esi
mov byte [0x10081062], 0
call fcn.10043620
test eax, eax
pop ecx
pop ecx
jne 0x1000a17e
push esi
mov ecx, dword [ebx]
mov eax, dword [ebx + 4]
mov dl, byte [ebp - 0x5d]
mov byte [eax + ecx - 1], dl
call fcn.1001e0b8
pop ecx
jmp 0x1000a2cb
add eax, 0x13
mov esi, 0x10064758
push esi
push eax
mov dword [ebp - 0x70], eax
call fcn.10043620
test eax, eax
pop ecx
pop ecx
mov dword [ebp - 0x74], eax
jne 0x1000a19e
push dword [ebp - 0x68]
jmp 0x1000a167
mov eax, dword [ebp - 0x64]
mov eax, dword [eax + 4]
push edi
push eax
call fcn.10043620
mov edi, eax
test edi, edi
pop ecx
pop ecx
je 0x1000a199
add edi, 0x13
push esi
push edi
call fcn.10043620
test eax, eax
pop ecx
pop ecx
mov dword [ebp - 0x78], eax
je 0x1000a199
mov esi, dword [ebp - 0x64]
mov eax, dword [esi + 4]
push str.____CONTENT_BEGIN_7678a______
push eax
call fcn.10043620
test eax, eax
pop ecx
pop ecx
je 0x1000a199
add eax, 0x1d
mov dword [ebp - 0x64], eax
mov eax, dword [esi + 4]
push str.____CONTENT_END_7678a______
push eax
call fcn.10043620
test eax, eax
pop ecx
pop ecx
mov dword [ebp - 0x7c], eax
je 0x1000a199
cmp eax, dword [ebp - 0x64]
jb 0x1000a199
cmp edi, dword [ebp - 0x64]
jbe 0x1000a199
mov eax, dword [esi + 4]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x1000a20a
sub eax, edx
mov ecx, eax
mov eax, dword [ebp - 0x68]
lea esi, [eax + 1]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x1000a21b
sub eax, esi
lea ebx, [eax + ecx + 1]
push ebx
call fcn.1001e0bd
push ebx
mov esi, eax
push 0
push esi
call fcn.10042a90
mov eax, edi
sub eax, dword [ebp - 0x64]
mov dword [ebp - 0x6c], esi
push eax
push dword [ebp - 0x64]
push esi
call fcn.10043ac0
mov eax, dword [ebp - 0x74]
sub eax, dword [ebp - 0x70]
sub edi, dword [ebp - 0x64]
push eax
push dword [ebp - 0x70]
add esi, edi
push esi
call fcn.10043ac0
mov eax, dword [ebp - 0x7c]
sub eax, dword [ebp - 0x78]
sub esi, dword [ebp - 0x70]
push eax
push dword [ebp - 0x78]
add esi, dword [ebp - 0x74]
push esi
call fcn.10043ac0
push ebx
call fcn.1001e0bd
push ebx
mov esi, eax
push 0
push esi
call fcn.10042a90
mov eax, dword [ebp - 0x6c]
add esp, 0x44
lea ecx, [eax + 1]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x1000a290
push dword [ebp - 0x6c]
sub eax, ecx
push eax
push str.HTTP_1.1_200_OK_r_nContent_Length:__u_r_nContent_Type:_text_html_r_n_r_n_s
push esi
call fcn.100436a6
push dword [ebp - 0x6c]
call fcn.1001e0b8
push dword [ebp - 0x68]
call fcn.1001e0b8
add esp, 0x18
mov eax, esi
jmp 0x1000a2cd
mov ecx, dword [ebx]
mov eax, dword [ebx + 4]
mov dl, byte [ebp - 0x5d]
mov byte [eax + ecx - 1], dl
xor eax, eax
pop edi
pop esi
mov ecx, dword [ebp + 0xe00]
xor ecx, ebp
pop ebx
call fcn.10042977
add ebp, 0xe04
leave
ret 4