Function at 0x4363a0
Capabilities:
Create thread

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x487bb7
mov eax, dword fs:[0]
push eax
sub esp, 0x5c
mov eax, dword [0x4b3014]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, dword [ebp + 0xc]
mov ebx, dword [ebp + 8]
mov dword [ebp - 0x34], esi
call fcn.004693ac
push eax
push str.CDispatcherHandler::CrossDomainRequest
push str._s_IN_time___d_
push 0
push 5
call fcn.00457970
add esp, 0x14
test esi, esi
je 0x436a19
call fcn.0040f790
mov ecx, eax
test ecx, ecx
jne 0x43640d
push 0x80004005
call fcn.0041ffc0
mov eax, dword [ecx]
call dword [eax + 0xc]
lea edi, [eax + 0x10]
mov dword [ebp - 0x20], edi
mov dword [ebp - 4], 0
call fcn.0040f790
mov ecx, eax
test ecx, ecx
jne 0x436434
push 0x80004005
call fcn.0041ffc0
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 1
call fcn.0040f790
mov ecx, eax
test ecx, ecx
jne 0x436458
push 0x80004005
call fcn.0041ffc0
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x1c], eax
mov byte [ebp - 4], 2
mov ecx, ebx
push 0x49b17c
mov dword [ebp - 0x24], 0
call fcn.0044e8e0
or esi, 0xffffffff
cmp eax, 0x4b75d0
je 0x43695f
push ecx
push 0x49b17c
mov ecx, ebx
call fcn.0044e720
cmp byte [eax + 8], 4
jne 0x43695f
call fcn.0040f790
mov ecx, eax
test ecx, ecx
jne 0x4364b4
push 0x80004005
call fcn.0041ffc0
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x14], eax
push ecx
push 0x49b17c
mov ecx, ebx
mov byte [ebp - 4], 3
call fcn.0044e720
mov edx, dword [eax]
test edx, edx
jne 0x4364da
xor ecx, ecx
jmp 0x4364ec
mov ecx, edx
lea eax, [ecx + 1]
mov dword [ebp - 0x28], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4364e2
sub ecx, dword [ebp - 0x28]
push ecx
push edx
lea ecx, [ebp - 0x18]
call fcn.0042f770
lea edx, [ebp - 0x14]
lea ecx, [ebp - 0x18]
call fcn.0045b110
mov eax, dword [0x4b745c]
test eax, eax
jne 0x436540
push 0x218
call fcn.0045ea95
mov esi, eax
mov dword [ebp - 0x2c], esi
push 0x218
push 0
push esi
mov byte [ebp - 4], 4
call fcn.00463360
add esp, 0x10
mov ecx, esi
call fcn.004288b0
mov byte [ebp - 4], 3
or esi, 0xffffffff
mov dword [0x4b745c], eax
lea ecx, [ebp - 0x14]
push ecx
mov ecx, eax
call fcn.0042b3a0
test al, al
je 0x43664d
push str.CDispatcherHandler::CrossDomainRequest
push str._s_stats_url_encoded
push 3
push 5
call fcn.00457970
add esp, 0x10
lea edx, [ebp - 0x14]
lea ecx, [ebp - 0x2c]
call fcn.0045b2f0
mov dword [ebp - 0x28], eax
mov byte [ebp - 4], 5
mov ecx, dword [eax]
cmp dword [ecx - 4], 1
jle 0x436590
push dword [ecx - 0xc]
mov ecx, eax
call fcn.0042e100
mov eax, dword [ebp - 0x28]
mov eax, dword [eax]
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x60]
and eax, 0xffffff04
mov dword [ebp - 0x5c], 0
or eax, 0x104
mov dword [ebp - 0x60], eax
mov eax, dword fs:[0x2c]
mov ecx, dword [eax]
mov eax, dword [0x4b98b4]
cmp eax, dword [ecx + 4]
jle 0x4365f8
push 0x4b98b4
call fcn.0045ec22
add esp, 4
cmp dword [0x4b98b4], 0xffffffff
jne 0x4365f8
push 0x48b3b0
mov dword [0x4b9828], 0x49fe60
call fcn.0045ef79
push 0x4b98b4
call fcn.0045ebe3
add esp, 8
mov ecx, dword [0x4b3e10]
push 0xffffffffffffffff
push dword [ebp - 0x28]
mov eax, dword [ecx]
call dword [eax + 0xc]
mov dword [ebp - 0x68], eax
lea eax, [ebp - 0x68]
mov byte [ebp - 4], 6
push eax
push ecx
push 0x49b17c
mov ecx, ebx
call fcn.0044e720
mov ecx, eax
call fcn.0044dfd0
lea ecx, [ebp - 0x68]
call fcn.0044df10
mov byte [ebp - 4], 3
mov eax, esi
mov edx, dword [ebp - 0x2c]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x43664d
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push str.onSuccessId
mov ecx, ebx
mov dword [ebp - 0x28], 0xffffffff
call fcn.0044e8e0
cmp eax, 0x4b75d0
je 0x436691
push ecx
push str.onSuccessId
mov ecx, ebx
call fcn.0044e720
cmp byte [eax + 8], 1
jne 0x436691
push ecx
push str.onSuccessId
mov ecx, ebx
call fcn.0044e720
mov ecx, eax
call fcn.0044e080
mov dword [ebp - 0x28], eax
push str.onFailureId
mov ecx, ebx
call fcn.0044e8e0
cmp eax, 0x4b75d0
je 0x4366d4
push ecx
push str.onFailureId
mov ecx, ebx
call fcn.0044e720
cmp byte [eax + 8], 1
jne 0x4366d4
push ecx
push str.onFailureId
mov ecx, ebx
call fcn.0044e720
mov ecx, eax
call fcn.0044e080
cmp eax, 0xffffffff
jne 0x4368b2
cmp dword [ebp - 0x28], 0xffffffff
jne 0x4368b2
push 0x4983ec
lea ecx, [ebp - 0x58]
mov byte [ebp - 4], 9
call fcn.0042d320
push 0x4983ec
lea ecx, [ebp - 0x54]
call fcn.0042d320
push 0x4983ec
lea ecx, [ebp - 0x4c]
mov dword [ebp - 0x50], 0xffffffff
call fcn.0042d320
push 0x4983ec
lea ecx, [ebp - 0x48]
call fcn.0042d320
mov dword [ebp - 0x44], 0
mov dword [ebp - 0x40], 0
mov byte [ebp - 0x3c], 0
mov dword [ebp - 0x38], 0
lea eax, [ebp - 0x14]
mov byte [ebp - 4], 0xa
push eax
lea ecx, [ebp - 0x58]
call fcn.0042e2f0
push str.additionalRequestHeaders
mov ecx, ebx
call fcn.0044e8e0
cmp eax, 0x4b75d0
je 0x4367af
push ecx
push str.additionalRequestHeaders
mov ecx, ebx
call fcn.0044e720
cmp byte [eax + 8], 4
jne 0x4367af
push ecx
push str.additionalRequestHeaders
mov ecx, ebx
call fcn.0044e720
mov edx, dword [eax]
test edx, edx
jne 0x436783
xor ecx, ecx
jmp 0x43679a
mov ecx, edx
lea eax, [ecx + 1]
mov dword [ebp - 0x2c], eax
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x436790
sub ecx, dword [ebp - 0x2c]
push ecx
push edx
lea ecx, [ebp - 0x18]
call fcn.0042f770
lea edx, [ebp - 0x4c]
lea ecx, [ebp - 0x18]
call fcn.0045b110
push str.referer
mov ecx, ebx
call fcn.0044e8e0
cmp eax, 0x4b75d0
je 0x43680f
push ecx
push str.referer
mov ecx, ebx
call fcn.0044e720
cmp byte [eax + 8], 4
jne 0x43680f
push ecx
push str.referer
mov ecx, ebx
call fcn.0044e720
mov edx, dword [eax]
test edx, edx
jne 0x4367ec
xor ecx, ecx
jmp 0x4367fa
mov ecx, edx
lea ebx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4367f1
sub ecx, ebx
push ecx
push edx
lea ecx, [ebp - 0x18]
call fcn.0042f770
lea edx, [ebp - 0x48]
lea ecx, [ebp - 0x18]
call fcn.0045b110
lea edx, [ebp - 0x58]
lea ecx, [ebp - 0x30]
call fcn.00459920
mov byte [ebp - 4], 0xb
cmp byte [ebp - 0x2c], 0
je 0x436868
lea eax, [ebp - 0x30]
push eax
lea ecx, [ebp - 0x20]
call fcn.0042e2f0
mov byte [ebp - 4], 0xa
mov eax, esi
mov edx, dword [ebp - 0x30]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x43684e
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0x58]
call fcn.0042a1a0
mov edi, dword [ebp - 0x20]
mov byte [ebp - 4], 2
mov edx, dword [ebp - 0x14]
add edx, 0xfffffff0
jmp 0x436933
mov esi, dword [ebp - 0x14]
push esi
push str.CDispatcherHandler::CrossDomainRequest
push str._s_download_failed__url__s__
push 3
push 0
call fcn.00457970
mov byte [ebp - 4], 0xa
add esp, 0x14
mov edx, dword [ebp - 0x30]
or eax, 0xffffffff
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4368a1
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0x58]
call fcn.0042a1a0
mov byte [ebp - 4], 2
lea edx, [esi - 0x10]
jmp 0x436930
push 0x10
call fcn.0045ea95
mov esi, eax
add esp, 4
mov dword [ebp - 0x2c], esi
mov byte [esi + 8], 0
mov ecx, esi
and dword [esi + 8], 0xfffffeff
push ebx
mov dword [esi + 0xc], 0
mov byte [ebp - 4], 3
call fcn.0044dfd0
lea eax, [ebp - 0x24]
push eax
push 0
push esi
push 0x436020
push 0
push 0
call fcn.00465ee2
add esp, 0x18
test eax, eax
jne 0x436949
push ecx
mov ecx, esi
call fcn.00435060
push str.crossDomainRequest_beginthreadex_error
lea ecx, [ebp - 0x1c]
call fcn.0042d1c0
push str.CDispatcherHandler::CrossDomainRequest
push str._s__beginthreadex_error
push 3
push 5
call fcn.00457970
mov byte [ebp - 4], 2
add esp, 0x10
mov edx, dword [ebp - 0x14]
add edx, 0xfffffff0
or esi, 0xffffffff
mov eax, esi
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x436984
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
jmp 0x436984
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov byte [ebp - 4], 2
or esi, 0xffffffff
mov edx, dword [ebp - 0x14]
add edx, 0xfffffff0
jmp 0x436933
push 0x1e
push str.crossDomainRequest_url_missing
lea ecx, [ebp - 0x1c]
call fcn.0042eac0
push str.CDispatcherHandler::CrossDomainRequest
push str._s_url_error
push 3
push 5
call fcn.00457970
add esp, 0x10
mov ebx, dword [ebp - 0x34]
mov eax, 8
mov word [ebx], ax
push dword [edi - 0xc]
push edi
call dword [sym.imp.OLEAUT32.dll_SysReAllocStringLen]
test eax, eax
jne 0x4369a2
call fcn.0042e970
mov dword [ebx + 8], eax
call fcn.004693ac
push eax
push str.CDispatcherHandler::CrossDomainRequest
push str._s_OUT_time___d_
push 0
push 5
call fcn.00457970
mov byte [ebp - 4], 1
add esp, 0x14
mov edx, dword [ebp - 0x1c]
mov eax, esi
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4369df
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0
mov eax, esi
mov edx, dword [ebp - 0x18]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4369fd
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov dword [ebp - 4], 0xffffffff
add edi, 0xfffffff0
lock xadd dword [edi + 0xc], esi
dec esi
test esi, esi
jg 0x436a19
mov ecx, dword [edi]
push edi
mov eax, dword [ecx]
call dword [eax + 4]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0045ea7f
mov esp, ebp
pop ebp
ret 8