Function at 0x42701d
Capabilities:
Check http status code

Disassembly:
mov eax, 0x45db02
call fcn.0044e550
sub esp, 0x4c
push ebx
push esi
mov esi, ecx
mov ecx, dword [esi + 0x3c]
mov eax, dword [esi + 0x10]
movzx eax, byte [eax + ecx]
push edi
mov ecx, esi
call dword [eax*4 + 0x472090]
cmp byte [esi + 0x18], 5
jne 0x427040
test byte [esi + 0x19], 3
je 0x427050
mov eax, dword [esi]
fild dword [esi]
test eax, eax
jge 0x42704e
fadd qword [0x460fe8]
fstp qword [esi]
fldz
fcomp qword [esi]
fnstsw ax
test ah, 5
jp 0x42706d
fld qword [esi]
fmul qword [0x462910]
call fcn.004504d6
mov dword [ebp - 0x14], eax
jmp 0x427071
or dword [ebp - 0x14], 0xffffffff
mov eax, dword [esi + 0x10]
mov ecx, dword [esi + 0x3c]
movzx edx, byte [eax + ecx]
inc eax
mov dword [esi + 0x10], eax
movzx ebx, byte [eax + ecx]
inc eax
mov dword [esi + 0x10], eax
xor eax, eax
lea edi, [ebp - 0x34]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
xor ecx, ecx
mov dword [ebp - 4], ecx
mov eax, edx
shr eax, 7
and edx, 0x1f
and al, 1
cmp edx, 7
mov byte [ebp - 0x1c], al
mov dword [ebp - 0x20], edx
jg 0x4274cf
mov edi, dword [esi + 0x10]
mov dword [ebp - 0x24], edi
cmp edx, 1
je 0x4273cb
cmp edx, 7
je 0x4273cb
cmp edx, 4
je 0x4272d3
cmp edx, 5
je 0x4272d3
cmp edx, 2
jne 0x427185
test al, al
jne 0x42712f
xor edi, edi
push 0x28
pop ebx
cmp dword [ebp - 0x14], ecx
jbe 0x427719
mov ecx, esi
call fcn.0041e786
test eax, eax
jne 0x427863
push ebx
mov ecx, esi
call fcn.004052e3
test al, al
je 0x4271d5
cmp ebx, 0x1f4
jae 0x42711d
add ebx, 0x14
mov eax, dword [ebp - 0x24]
add edi, ebx
mov dword [esi + 0x10], eax
cmp edi, dword [ebp - 0x14]
jb 0x4270f3
jmp 0x427719
mov ecx, esi
call fcn.0041e786
xor ebx, ebx
push 0x28
mov dword [ebp - 0x18], eax
pop edi
cmp dword [ebp - 0x14], ebx
jbe 0x427719
cmp dword [ebp - 0x18], 0
je 0x4271ff
push dword [ebp - 0x18]
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x4271ff
push edi
mov ecx, esi
call fcn.004052e3
test al, al
je 0x4271d5
cmp edi, 0x1f4
jae 0x427179
add edi, 0x14
add ebx, edi
cmp ebx, dword [ebp - 0x14]
jb 0x427147
jmp 0x427719
cmp edx, 3
jne 0x427209
mov ecx, esi
call fcn.0041e786
mov edi, eax
test edi, edi
je 0x4271ff
lea ecx, [ebp - 0x20]
call fcn.00426861
mov byte [ebp - 4], 1
push 0
push 0x100000
push edi
lea ecx, [ebp - 0x20]
call fcn.00425d62
test al, al
je 0x4271dc
push 0x10
push dword [ebp - 0x20]
mov ecx, esi
push dword [ebp - 0x14]
call fcn.00426eed
test eax, eax
jne 0x4271f3
mov byte [ebp - 4], al
lea ecx, [ebp - 0x20]
call fcn.00426884
xor esi, esi
jmp 0x427865
push edi
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x4271f3
push 0x23d
mov ecx, esi
call fcn.004052f9
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x20]
call fcn.00426884
call fcn.00425ae0
jmp 0x427863
push 6
pop edi
cmp edx, edi
jne 0x427719
mov ecx, esi
call fcn.0040ada4
mov ecx, esi
mov dword [ebp - 0x18], eax
call fcn.0040adcc
push 4
mov dword [ebp - 0x24], eax
pop eax
cmp ebx, eax
mov dword [ebp - 0x20], eax
jle 0x427255
mov ecx, esi
call fcn.0040adcc
test al, 1
je 0x427246
mov dword [ebp - 0x20], 2
jmp 0x42724d
test al, 2
je 0x42724d
mov dword [ebp - 0x20], edi
test al, 4
je 0x427255
or dword [ebp - 0x20], 1
xor edi, edi
push 0x14
pop ebx
cmp dword [ebp - 0x14], edi
jbe 0x427719
push dword [ebp - 0x18]
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
jne 0x42727c
push 0x1fe
mov ecx, esi
call fcn.004052f9
push 0
push dword [ebp - 0x18]
lea ecx, [ebp - 0x34]
call fcn.0043925c
push dword [ebp - 0x20]
push dword [ebp - 0x24]
push dword [ebp - 0x34]
call fcn.0042f973
add esp, 0xc
mov ecx, esi
cmp al, byte [ebp - 0x1c]
jne 0x4272c6
push ebx
call fcn.004052e3
test al, al
je 0x4271d5
cmp ebx, 0xc8
jae 0x4272ba
add ebx, 5
add edi, ebx
cmp edi, dword [ebp - 0x14]
jb 0x427263
jmp 0x427719
call fcn.004052f1
mov esi, dword [ebp - 0x18]
jmp 0x427865
test al, al
jne 0x427367
mov byte [ebp - 0xd], cl
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x18], 0x28
cmp dword [ebp - 0x14], ecx
jbe 0x427719
mov ecx, esi
mov dword [esi + 0x10], edi
call fcn.0041e786
mov ebx, eax
test ebx, ebx
je 0x427323
cmp dword [ebp - 0x20], 4
mov eax, dword [sym.imp.USER32.dll_IsWindowVisible]
mov byte [ebp - 0xd], 1
je 0x427315
mov eax, dword [sym.imp.USER32.dll_IsWindowEnabled]
push ebx
call eax
test eax, eax
je 0x427335
mov esi, ebx
jmp 0x427865
cmp byte [ebp - 0xd], 0
je 0x427335
push 0x1fe
mov ecx, esi
call fcn.004052f9
push dword [ebp - 0x18]
mov ecx, esi
call fcn.004052e3
test al, al
je 0x4271d5
cmp dword [ebp - 0x18], 0x1f4
jae 0x427354
add dword [ebp - 0x18], 0x14
mov eax, dword [ebp - 0x18]
add dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
cmp eax, dword [ebp - 0x14]
jb 0x4272f1
jmp 0x427719
mov ecx, esi
call fcn.0041e786
xor ebx, ebx
mov dword [ebp - 0x18], eax
cmp eax, ebx
je 0x42755f
push 0x28
pop edi
cmp dword [ebp - 0x14], ebx
jbe 0x427719
cmp dword [ebp - 0x20], 4
mov eax, dword [sym.imp.USER32.dll_IsWindowVisible]
je 0x427397
mov eax, dword [sym.imp.USER32.dll_IsWindowEnabled]
push dword [ebp - 0x18]
call eax
test eax, eax
je 0x4272cb
push edi
mov ecx, esi
call fcn.004052e3
test al, al
je 0x4271d5
cmp edi, 0x1f4
jae 0x4273bf
add edi, 0x14
add ebx, edi
cmp ebx, dword [ebp - 0x14]
jb 0x427387
jmp 0x427719
test al, al
jne 0x427475
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x18], 0x28
cmp dword [ebp - 0x14], ecx
jbe 0x427719
and dword [ebp - 0x24], 0
push 0xffffffffffffffff
lea eax, [ebp - 0x24]
push eax
push 0x10
mov ecx, esi
mov dword [esi + 0x10], edi
call fcn.00428af6
cmp dword [ebp - 0x24], 0
mov ebx, eax
jne 0x427413
test ebx, ebx
je 0x427429
push ebx
call fcn.00428032
pop ecx
test al, al
je 0x427429
push ebx
call dword [sym.imp.USER32.dll_IsWindowVisible]
test eax, eax
je 0x427429
push ebx
call dword [sym.imp.USER32.dll_IsIconic]
test eax, eax
je 0x42745b
push dword [ebp - 0x18]
mov ecx, esi
call fcn.004052e3
test al, al
je 0x4271d5
cmp dword [ebp - 0x18], 0x1f4
jae 0x427448
add dword [ebp - 0x18], 0x14
mov eax, dword [ebp - 0x18]
add dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
cmp eax, dword [ebp - 0x14]
jb 0x4273e6
jmp 0x427719
cmp dword [ebp - 0x20], 7
jne 0x42731c
mov esi, dword [ebp - 0x24]
test esi, esi
jne 0x427865
jmp 0x42755f
mov ecx, esi
call fcn.0041e786
xor ebx, ebx
push 0x28
mov dword [ebp - 0x18], eax
pop edi
cmp dword [ebp - 0x14], ebx
jbe 0x427719
cmp dword [ebp - 0x18], 0
je 0x4271ff
push dword [ebp - 0x18]
call fcn.00428032
pop ecx
test al, al
je 0x4271ff
push edi
mov ecx, esi
call fcn.004052e3
test al, al
je 0x4271d5
cmp edi, 0x1f4
jae 0x4274c3
add edi, 0x14
add ebx, edi
cmp ebx, dword [ebp - 0x14]
jb 0x42748d
jmp 0x427719
push 8
pop edi
cmp edx, edi
je 0x4277e4
cmp edx, 9
je 0x4277e4
cmp edx, 0xd
jg 0x42751b
mov eax, dword [esi + 0x40]
cmp dword [eax + 0x34], 3
jge 0x4274fb
push str.this_command_cannot_be_in_this_thread
call fcn.0042e0a8
lea eax, [edx - 9]
cmp eax, 4
jne 0x42750b
xor eax, eax
push 6
inc eax
pop ecx
jmp 0x427515
cmp eax, 3
jne 0x427513
push 4
pop eax
mov ecx, eax
push ecx
jmp 0x427850
cmp edx, 0xe
jne 0x427567
cmp ebx, 2
jle 0x42752e
mov ecx, esi
call fcn.0040adcc
jmp 0x427533
mov eax, dword [0x473b5c]
push 0
push dword [ebp - 0x1c]
mov ecx, esi
push 0
push eax
push dword [ebp - 0x14]
call fcn.00426787
mov edi, eax
test edi, edi
jne 0x427559
push 0x21c
mov ecx, esi
call fcn.004052f9
test edi, edi
jbe 0x427725
xor esi, esi
inc esi
jmp 0x427865
cmp edx, 0xf
jne 0x427584
push edi
mov ecx, esi
call fcn.0040adcc
push eax
push dword [ebp - 0x14]
mov ecx, esi
call fcn.00426eed
jmp 0x427863
cmp edx, 0x10
je 0x427767
cmp edx, 0x11
je 0x427767
cmp edx, 0x12
jne 0x4275cb
mov ecx, esi
call fcn.0040ae1d
push dword [ebp - 0x1c]
mov edi, eax
push 0xffffffffffffffff
push edi
push dword [ebp - 0x14]
mov ecx, esi
call fcn.004260d8
sub eax, 0
je 0x427719
dec eax
jne 0x427725
mov esi, dword [edi]
jmp 0x427865
cmp edx, 0x13
jne 0x427647
xor edi, edi
cmp ebx, 2
mov dword [ebp - 0x1c], ecx
jle 0x4275eb
mov ecx, esi
call fcn.0040adcc
push eax
call fcn.0042f0ce
mov edi, eax
xor ecx, ecx
cmp dword [ebp - 0x14], 0xffffffff
jne 0x4275f5
xor eax, eax
jmp 0x427616
mov ecx, 0x3e8
cmp dword [ebp - 0x14], ecx
jae 0x427604
xor eax, eax
inc eax
jmp 0x427616
mov eax, dword [ebp - 0x14]
xor edx, edx
div ecx
mov ecx, 0xffff
cmp eax, ecx
jbe 0x427616
mov eax, ecx
xor ebx, ebx
shl eax, 0x10
cmp edi, ebx
jne 0x427622
or eax, 1
push ebx
push edi
push ebx
push eax
lea eax, [ebp - 0x1c]
push eax
push ebx
mov ecx, esi
call fcn.0041d992
cmp eax, ebx
je 0x42755f
push eax
mov ecx, esi
call fcn.004052f9
jmp 0x42755f
cmp edx, 0x14
jne 0x427661
push dword [ebp - 0x1c]
mov ecx, esi
push dword [ebp - 0x14]
call fcn.00426411
movzx esi, al
jmp 0x427865
cmp edx, 0x15
jne 0x427738
mov byte [ebp - 0xd], cl
mov ecx, esi
call fcn.0040adcc
mov ebx, eax
mov eax, dword [esi + 4]
mov edi, 0x23b
test eax, eax
je 0x427694
cmp eax, 1
jne 0x42768c
mov byte [ebp - 0xd], al
jmp 0x4276b8
push edi
mov ecx, esi
call fcn.004052f9
test ebx, ebx
je 0x4276b8
cmp ebx, 0xffff
ja 0x4276b0
push dword [esi]
push 0
call dword [sym.imp.USER32.dll_LoadCursorA]
mov ebx, eax
test ebx, ebx
jne 0x4276b8
push edi
mov ecx, esi
call fcn.004052f9
xor edi, edi
cmp dword [ebp - 0x14], edi
jbe 0x427719
lea eax, [ebp - 0x58]
push eax
mov dword [ebp - 0x58], 0x14
call dword [sym.imp.USER32.dll_GetCursorInfo]
test eax, eax
je 0x4276f5
test byte [ebp - 0x54], 1
je 0x4276f5
cmp byte [ebp - 0xd], 0
jne 0x4276e8
cmp ebx, dword [ebp - 0x50]
sete al
jmp 0x4276f7
push dword [ebp - 0x50]
call fcn.00425aec
pop ecx
cmp eax, ebx
jmp 0x4276e3
xor al, al
xor al, byte [ebp - 0x1c]
jne 0x42755f
push 0x32
mov ecx, esi
call fcn.004052e3
test al, al
je 0x4271d5
add edi, 0x32
cmp edi, dword [ebp - 0x14]
jb 0x4276bf
push 0x21c
mov ecx, esi
call fcn.004052f9
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x34]
call fcn.0042b651
xor eax, eax
jmp 0x427873
cmp edx, 0x16
jne 0x427725
push dword [ebp - 0x1c]
add ebx, 0xfffffffe
push dword [ebp - 0x14]
mov ecx, esi
push ebx
call fcn.0040d62c
mov edi, eax
test edi, edi
jne 0x427760
push 0x21c
mov ecx, esi
call fcn.004052f9
mov esi, edi
jmp 0x427865
xor edi, edi
cmp ebx, 3
jne 0x427798
mov ecx, esi
call fcn.0040ae1d
mov eax, dword [eax]
test eax, eax
je 0x427783
mov edi, dword [eax + 0xc]
mov ebx, dword [eax + 0x10]
jmp 0x427785
xor ebx, ebx
cmp ebx, 0x3c
jle 0x4277bd
push 0x23b
mov ecx, esi
call fcn.004052f9
jmp 0x4277bd
cmp ebx, 2
jbe 0x4277b7
lea eax, [ebx - 2]
lea edi, [ebp - 0x44]
mov dword [ebp - 0x24], eax
mov ecx, esi
call fcn.0040adcc
mov dword [edi], eax
add edi, 4
dec dword [ebp - 0x24]
jne 0x4277a6
lea edi, [ebp - 0x44]
add ebx, 0xfffffffe
test ebx, ebx
je 0x427725
movzx eax, bx
xor ecx, ecx
shl eax, 0x10
cmp dword [ebp - 0x20], 0x11
sete cl
lea ecx, [ecx*4 + 0xa]
or eax, ecx
push eax
push edi
jmp 0x427575
mov eax, dword [esi + 0x40]
cmp dword [eax + 0x34], 3
jl 0x4274f1
mov ecx, esi
cmp ebx, 3
jne 0x427855
call fcn.0040adcc
mov ecx, esi
call fcn.0040b15d
test al, al
je 0x42783f
push dword [esi]
lea ecx, [ebp - 0x34]
call fcn.0042cab5
push 0
lea ecx, [ebp - 0x34]
call fcn.00406b77
cmp dword [ebp - 0x30], 0
jne 0x42782c
push str.empty_string
jmp 0x4274f6
lea eax, [ebp - 0x18]
push eax
push dword [ebp - 0x34]
call fcn.004338eb
pop ecx
pop ecx
movzx eax, al
jmp 0x427841
mov eax, dword [esi]
cmp eax, edi
jge 0x42784f
push str.cannot_recognize_key_code
jmp 0x4274f6
push eax
push eax
mov ecx, esi
jmp 0x42785b
push 0xff
push edi
push dword [ebp - 0x14]
call fcn.004262bd
mov esi, eax
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x34]
call fcn.0042b651
mov eax, esi
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
pop ebx
mov dword fs:[0], ecx
leave
ret