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

Disassembly:
push ebp
mov ebp, eax
push edi
push esi
push ebx
sub esp, 0x1bc
mov dword [esp], 0x4000
call fcn.00421730
mov dword [esp + 0x58], eax
test eax, eax
jne 0x40b760
mov dword [esp], 0x421698
call fcn.00401400
lea eax, [esp + 0xd8]
mov dword [esp], eax
mov eax, dword [0x4c58ac]
mov dword [esp + 0x5c], eax
call eax
mov eax, dword [0x443668]
mov ebx, dword [0x44366c]
sub esp, 4
mov dword [esp + 0x20], eax
or eax, ebx
mov esi, dword [esp + 0xd8]
mov edi, dword [esp + 0xdc]
je 0x40b670
lea eax, [esp + 0x78]
mov dword [esp + 8], 0xf4240
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x20]
mov dword [esp + 0xc], 0
mov dword [esp], eax
mov dword [esp + 4], ebx
call fcn.00421a90
mov ecx, dword [esp + 0x78]
or ecx, dword [esp + 0x7c]
je 0x40b648
lea eax, [esp + 0x78]
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x20]
mov dword [esp], esi
mov dword [esp + 4], edi
mov edi, 0xf4240
mov dword [esp + 8], eax
call fcn.00421a90
imul ecx, dword [esp + 0x7c], 0xf4240
mov dword [esp + 0xc], ebx
mov dword [esp + 0x28], eax
mov esi, edx
mov eax, edi
mul dword [esp + 0x78]
imul esi, esi, 0xf4240
add edx, ecx
mov ecx, dword [esp + 0x20]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call fcn.0042fc70
mov ecx, eax
mov eax, dword [esp + 0x28]
mov ebx, edx
mul edi
add edx, esi
add ecx, eax
adc ebx, edx
mov dword [esp + 0x28], ecx
mov dword [esp + 0x2c], ebx
mov eax, dword [ebp + 4]
mov edx, dword [ebp + 0x20]
mov ecx, dword [ebp + 0x24]
mov edi, dword [ebp + 0x18]
mov esi, dword [ebp + 0x1c]
mov ebx, dword [ebp]
mov dword [esp + 0x20], eax
mov eax, dword [ebp + 0x80]
mov dword [esp + 0x38], edx
mov dword [esp + 0x3c], ecx
movzx edx, word [ebp + 0x88]
mov dword [esp + 0x172], eax
movzx eax, word [ebp + 0x8c]
mov ecx, dword [ebp + 0x30]
mov dword [esp + 0x30], edi
shl eax, 0x10
mov dword [esp + 0x34], esi
mov esi, dword [ebp + 0x28]
or edx, eax
mov dword [esp + 0x48], ecx
movzx eax, byte [ebp + 0xf9]
movzx ecx, byte [ebp + 0x101]
mov ah, byte [ebp + 0xfa]
mov dword [esp + 0x4c], edx
movzx edx, byte [ebp + 0xd9]
mov dword [esp + 0x44], esi
shl ecx, 0x10
movzx eax, ax
or eax, ecx
shl edx, 0x18
mov ecx, dword [ebp + 0xf0]
mov edi, eax
movzx eax, byte [ebp + 0xe6]
mov ah, byte [ebp + 0xe7]
or edi, edx
movzx edx, byte [ebp + 0xeb]
mov dword [esp + 0x40], ecx
movzx esi, ax
movzx eax, byte [ebp + 0xec]
mov dword [esp + 0x50], edi
shl edx, 0x10
movzx ecx, byte [ebp + 0xf4]
mov ch, byte [ebp + 0xf5]
mov dword [esp + 0x134], ebx
shl eax, 0x18
or esi, edx
movzx edx, byte [ebp + 0xf6]
or esi, eax
movzx eax, byte [ebp + 0xf8]
movzx ecx, cx
shl edx, 0x10
shl eax, 0x18
or ecx, edx
mov edx, dword [esp + 0x2c]
or ecx, eax
mov eax, dword [esp + 0x28]
and edx, 0xffff
mov dword [esp + 0x54], ecx
mov ecx, 0xdeece66d
imul edi, edx, 0xdeece66d
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x28]
mov dword [esp + 0x2c], edx
mov edx, dword [esp + 0x28]
lea edx, [edx + edx*4]
add edi, edx
mul ecx
mov ecx, 0x1f
add edx, edi
mov edi, dword [ebp + 0x38]
add eax, 0xb
adc edx, 0
mov dword [esp + 0x138], edi
mov edi, dword [ebp + 0x3c]
shrd eax, edx, 0x10
and eax, 0x7fffffff
mov edx, dword [esp + 0x38]
mov dword [esp + 0x13c], edi
mov edi, dword [ebp + 0x40]
mov dword [esp + 0x130], eax
mov eax, dword [esp + 0x20]
mov dword [esp + 0x140], edi
mov edi, dword [ebp + 0x44]
mov dword [esp + 0x150], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 0x144], edi
mov edi, dword [ebp + 0x48]
mov dword [esp + 0x15c], edx
mov dword [esp + 0x148], edi
mov edi, dword [ebp + 0x7c]
mov dword [esp + 0x158], eax
mov dword [esp + 0x14c], edi
mov edi, dword [esp + 0x30]
mov dword [esp + 0x154], edi
mov eax, dword [esp + 0x3c]
mov edx, dword [esp + 0x4c]
mov edi, dword [esp + 0x50]
mov dword [esp + 0x198], esi
mov dword [esp + 0x160], eax
mov eax, dword [esp + 0x44]
mov dword [esp + 0x17c], edx
mov edx, dword [ebp + 0x90]
mov dword [esp + 0x164], eax
mov eax, dword [ebp + 0x2c]
mov dword [esp + 0x180], edx
mov edx, dword [ebp + 0x94]
mov dword [esp + 0x168], eax
mov eax, dword [esp + 0x48]
mov dword [esp + 0x184], edx
mov edx, dword [ebp + 0x98]
mov dword [esp + 0x16c], eax
movzx eax, word [ebp + 0x34]
movzx esi, word [ebp + 0xed]
mov dword [esp + 0x188], edx
mov word [esp + 0x170], ax
mov eax, dword [ebp + 0x84]
mov edx, dword [ebp + 0xb0]
mov dword [esp + 0x194], edi
mov dword [esp + 0x178], eax
movzx eax, byte [ebp + 0x9c]
mov word [esp + 0x19c], si
lea esi, [esp + 0x130]
mov byte [esp + 0x18c], al
movzx eax, byte [ebp + 0xdc]
mov dword [esp + 0x190], edx
mov byte [esp + 0x18d], al
mov eax, dword [esp + 0x40]
mov dword [esp + 0x1a0], eax
mov eax, dword [esp + 0x54]
mov dword [esp + 0x1a4], eax
movzx eax, word [ebp + 0xfc]
mov word [esp + 0x1a8], ax
movzx eax, byte [ebp + 0xfe]
mov byte [esp + 0x1aa], al
mov eax, 0x443040
mov edi, eax
rep movsd dword es:[edi], dword [esi]
mov dword [0x443044], 0
test ebx, ebx
je 0x40b0fa
mov dword [esp], ebx
call fcn.0042fb28
mov dword [0x443044], eax
test eax, eax
je 0x40b6ad
mov dword [0x443060], 0
mov eax, dword [esp + 0x20]
test eax, eax
je 0x40b125
mov eax, dword [esp + 0x20]
mov dword [esp], eax
call fcn.0042fb28
mov dword [0x443060], eax
test eax, eax
je 0x40b6a8
mov dword [0x443064], 0
mov eax, dword [esp + 0x30]
test eax, eax
je 0x40b14c
mov dword [esp], eax
call fcn.0042fb28
mov dword [0x443064], eax
test eax, eax
je 0x40b6a8
mov dword [0x443068], 0
mov eax, dword [esp + 0x34]
test eax, eax
je 0x40b173
mov dword [esp], eax
call fcn.0042fb28
mov dword [0x443068], eax
test eax, eax
je 0x40b6a8
mov dword [0x44306c], 0
mov eax, dword [esp + 0x38]
test eax, eax
je 0x40b19a
mov dword [esp], eax
call fcn.0042fb28
mov dword [0x44306c], eax
test eax, eax
je 0x40b6a8
mov dword [0x443070], 0
mov eax, dword [esp + 0x3c]
test eax, eax
je 0x40b1c1
mov dword [esp], eax
call fcn.0042fb28
mov dword [0x443070], eax
test eax, eax
je 0x40b6a8
mov dword [0x4430b0], 0
mov eax, dword [esp + 0x40]
test eax, eax
je 0x40b1e8
mov dword [esp], eax
call fcn.0042fb28
mov dword [0x4430b0], eax
test eax, eax
je 0x40b6a8
mov dword [0x443074], 0
mov eax, dword [esp + 0x44]
test eax, eax
je 0x40b20f
mov dword [esp], eax
call fcn.0042fb28
mov dword [0x443074], eax
test eax, eax
je 0x40b6a8
mov dword [0x44307c], 0
mov eax, dword [esp + 0x48]
test eax, eax
je 0x40b236
mov dword [esp], eax
call fcn.0042fb28
mov dword [0x44307c], eax
test eax, eax
je 0x40b6a8
call fcn.00421848
test eax, eax
je 0x40b828
mov dword [0x443108], eax
call fcn.00421850
test eax, eax
je 0x40be48
mov dword [0x44310c], eax
call fcn.00421848
test eax, eax
je 0x40c840
mov dword [0x443114], eax
xor eax, eax
mov dword [0x443118], 0
mov dword [0x44311c], 0
mov byte [0x443120], 0
mov byte [0x443110], 0
mov dword [0x4430bc], 0
movzx ebx, word [0x43a808]
cmp byte [ebp + 0xff], 0
mov dword [0x4430c0], 0
mov dword [0x443130], 0
mov dword [0x443134], 0
mov dword [0x443138], 0
mov word [0x443124], bx
mov dword [0x443128], 0
mov word [0x44312c], ax
mov dword [0x44313c], 0x434d98
mov dword [0x443140], 0
jne 0x40bc60
mov eax, dword [0x4c5918]
mov dword [esp + 8], 0x443040
mov dword [esp + 4], 0x433fef
mov dword [esp + 0x10], eax
mov eax, dword [0x4c5910]
mov dword [esp], 0x4186f0
mov dword [esp + 0xc], eax
call fcn.00421820
test eax, eax
je 0x40c750
cmp byte [ebp + 0xfe], 0
mov dword [0x4430c4], eax
jne 0x40b7c8
cmp byte [ebp + 0xff], 0
jne 0x40b780
cmp byte [ebp + 0xdc], 0
je 0x40b370
cmp byte [ebp + 0xec], 0
jne 0x40b780
lea esi, [esi]
cmp byte [ebp + 0xde], 0
jne 0x40c800
mov eax, dword [ebp + 0x58]
test eax, eax
je 0x40b398
mov dword [esp], 0x2000
call fcn.00421730
test eax, eax
jne 0x40cf20
movzx esi, byte [ebp + 0xe8]
movzx edi, byte [ebp + 0xdd]
mov dword [esp + 4], 1
mov dword [esp], 0x407f40
call dword [0x4c58b8]
sub esp, 8
test eax, eax
je 0x40c8c0
mov eax, edi
test al, al
je 0x40b3db
mov eax, esi
test al, al
je 0x40c8e0
call fcn.004217e8
lea eax, [esp + 0xd8]
mov dword [esp], eax
call fcn.004215d0
test eax, eax
je 0x40cdb2
mov eax, dword [esp + 0xd8]
cmp eax, 0x8003
je 0x40cdd0
cmp eax, 0x8004
je 0x40be90
cmp eax, 0x100
jne 0x40b3db
mov dword [esp + 4], str.User_requested_to_quit
mov esi, 1
mov dword [esp], 0
call fcn.00421708
mov byte [esp + 0x3c], 0
mov byte [esp + 0x40], 0
mov byte [esp + 0x28], 0
mov byte [esp + 0x34], 0
mov dword [esp + 0x20], 0
mov byte [esp + 0x44], 0
xor edi, edi
xor ebx, ebx
mov byte [esp + 0x30], 0
mov byte [esp + 0x38], 0
mov byte [esp + 0x4c], 0
mov byte [esp + 0x48], 0
cmp byte [esp + 0x34], 0
jne 0x40bdf8
cmp byte [esp + 0x28], 0
jne 0x40bdc0
cmp byte [esp + 0x38], 0
jne 0x40bd80
mov eax, esi
test al, al
jne 0x40bd40
mov eax, edi
test al, al
jne 0x40bc40
cmp byte [esp + 0x44], 0
jne 0x40bc20
cmp byte [esp + 0x48], 0
jne 0x40bc00
cmp byte [esp + 0x4c], 0
jne 0x40bbe0
test bl, bl
jne 0x40bb70
cmp byte [esp + 0x38], 0
jne 0x40bad0
cmp byte [esp + 0x30], 0
jne 0x40ba98
cmp byte [esp + 0x3c], 0
jne 0x40b9c0
cmp byte [esp + 0x40], 0
jne 0x40b9a0
cmp byte [esp + 0x28], 0
jne 0x40b970
cmp byte [esp + 0x34], 0
jne 0x40b8f0
mov eax, esi
test al, al
jne 0x40b8d0
mov ebx, dword [0x443130]
test ebx, ebx
je 0x40b536
mov edx, dword [ebx]
mov eax, 1
xchg byte [ebx + 4], al
test al, al
je 0x40c7e8
mov dword [esp], ebx
call fcn.0042fa48
mov ebx, dword [0x443134]
test ebx, ebx
je 0x40b55a
mov edx, dword [ebx]
mov eax, 1
xchg byte [ebx + 4], al
test al, al
je 0x40c7b8
mov dword [esp], ebx
call fcn.0042fa48
mov ebx, dword [0x443138]
test ebx, ebx
je 0x40b57e
mov edx, dword [ebx]
mov eax, 1
xchg byte [ebx + 4], al
test al, al
je 0x40c7d0
mov dword [esp], ebx
call fcn.0042fa48
mov eax, dword [0x4430bc]
mov dword [esp], eax
call fcn.0042fa48
mov eax, dword [0x4430c0]
mov dword [esp], eax
call fcn.0042fa48
mov eax, dword [0x443044]
mov dword [esp], eax
call fcn.0042fa48
mov eax, dword [0x443060]
mov dword [esp], eax
call fcn.0042fa48
mov eax, dword [0x443064]
mov dword [esp], eax
call fcn.0042fa48
mov eax, dword [0x443068]
mov dword [esp], eax
call fcn.0042fa48
mov eax, dword [0x44306c]
mov dword [esp], eax
call fcn.0042fa48
mov eax, dword [0x443070]
mov dword [esp], eax
call fcn.0042fa48
mov eax, dword [0x4430b0]
mov dword [esp], eax
call fcn.0042fa48
mov eax, dword [0x443074]
mov dword [esp], eax
call fcn.0042fa48
mov eax, dword [0x44307c]
mov dword [esp], eax
call fcn.0042fa48
mov eax, dword [0x443114]
mov dword [esp], eax
call fcn.00421808
mov eax, dword [0x44310c]
mov dword [esp], eax
call fcn.00421810
mov eax, dword [0x443108]
mov dword [esp], eax
call fcn.00421808
mov eax, dword [esp + 0x20]
add esp, 0x1bc
pop ebx
pop esi
pop edi
pop ebp
ret
mov dword [esp + 8], eax
mov dword [esp + 0xc], edx
mov dword [esp], esi
mov dword [esp + 4], edi
call fcn.0042fc70
mov dword [esp + 0x28], eax
mov dword [esp + 0x2c], edx
jmp 0x40ae34
lea eax, [esp + 0x130]
mov dword [esp], eax
call dword [0x4c58b0]
sub esp, 4
mov eax, dword [esp + 0x130]
mov ebx, dword [esp + 0x134]
mov dword [esp + 0x20], eax
mov dword [0x443668], eax
mov dword [0x44366c], ebx
jmp 0x40ad8d
mov eax, dword [0x443044]
mov dword [esp], eax
call fcn.0042fa48
mov eax, dword [0x443060]
mov dword [esp], eax
call fcn.0042fa48
mov eax, dword [0x443064]
mov dword [esp], eax
call fcn.0042fa48
mov eax, dword [0x443068]
mov dword [esp], eax
call fcn.0042fa48
mov eax, dword [0x44306c]
mov dword [esp], eax
call fcn.0042fa48
mov eax, dword [0x443070]
mov dword [esp], eax
call fcn.0042fa48
mov eax, dword [0x4430b0]
mov dword [esp], eax
call fcn.0042fa48
mov eax, dword [0x443074]
mov dword [esp], eax
call fcn.0042fa48
mov eax, dword [0x44307c]
mov dword [esp], eax
call fcn.0042fa48
mov dword [esp + 0x10], str.sc_server_init
mov dword [esp + 0xc], 0x1f8
mov dword [esp + 8], 0x433dd6
mov dword [esp + 4], 0x431262
mov dword [esp], 0
call fcn.00421700
mov dword [esp + 0x20], 1
mov eax, dword [esp + 0x20]
add esp, 0x1bc
pop ebx
pop esi
pop edi
pop ebp
ret
call fcn.00421778
mov dword [esp + 4], str.Could_not_initialize_SDL:__s
mov dword [esp + 8], eax
mov dword [esp], 0
call fcn.00421700
jmp 0x40b749
mov dword [esp], 0x20
call fcn.00421730
test eax, eax
je 0x40b370
cmp byte [ebp + 0xdd], 0
jne 0x40c9d0
call fcn.00421778
mov dword [esp + 4], str.Could_not_initialize_SDL_video:__s
mov dword [esp + 8], eax
mov dword [esp], 0
call fcn.004216c8
jmp 0x40b370
lea eax, [esp + 0xd8]
mov dword [esp], eax
call fcn.004215d0
test eax, eax
je 0x40dc40
mov eax, dword [esp + 0xd8]
cmp eax, 0x8003
je 0x40dc60
cmp eax, 0x8004
je 0x40b7ff
cmp eax, 0x100
jne 0x40b7c8
mov dword [esp + 0x20], 0
mov byte [esp + 0x3c], 0
mov esi, 1
mov byte [esp + 0x40], 0
mov byte [esp + 0x28], 0
mov byte [esp + 0x34], 0
jmp 0x40b44b
mov dword [esp + 0x10], str.sc_mutex_init
mov dword [esp + 0xc], 0x46
mov dword [esp + 8], 0x432e4f
mov dword [esp + 4], 0x431262
mov dword [esp], 0
call fcn.00421700
mov eax, dword [0x443044]
mov dword [esp], eax
call fcn.0042fa48
mov eax, dword [0x443060]
mov dword [esp], eax
call fcn.0042fa48
mov eax, dword [0x443064]
mov dword [esp], eax
call fcn.0042fa48
mov eax, dword [0x443068]
mov dword [esp], eax
call fcn.0042fa48
mov eax, dword [0x44306c]
mov dword [esp], eax
call fcn.0042fa48
mov eax, dword [0x443070]
mov dword [esp], eax
call fcn.0042fa48
mov eax, dword [0x4430b0]
mov dword [esp], eax
call fcn.0042fa48
mov eax, dword [0x443074]
mov dword [esp], eax
call fcn.0042fa48
mov eax, dword [0x44307c]
mov dword [esp], eax
call fcn.0042fa48
jmp 0x40b749
mov eax, dword [0x4430c4]
mov dword [esp + 4], 0
mov dword [esp], eax
call fcn.004215c8
jmp 0x40b512
cmp byte [0x44347d], 0
jne 0x40cd08
mov eax, dword [0x443478]
mov dword [esp], eax
call fcn.00421810
mov eax, dword [0x443474]
mov dword [esp], eax
call fcn.00421808
mov eax, dword [0x443490]
mov dword [esp], eax
call fcn.00421808
mov eax, dword [0x443468]
jmp 0x40b959
mov ebx, dword [0x443484]
xor edx, edx
sub ecx, 1
mov dword [0x443488], ecx
lea eax, [ebx + 1]
div dword [0x443480]
mov eax, dword [0x44348c]
mov eax, dword [eax + ebx*8 + 4]
mov dword [0x443484], edx
mov dword [esp], eax
call fcn.0042fa48
mov ecx, dword [0x443488]
test ecx, ecx
jne 0x40b930
jmp 0x40b508
mov eax, dword [0x443374]
mov dword [esp], eax
call fcn.00421810
mov eax, dword [0x443370]
mov dword [esp], eax
call fcn.00421808
mov eax, dword [0x443360]
mov dword [esp], eax
call fcn.0042fa48
jmp 0x40b4fd
mov eax, dword [0x44336c]
mov dword [esp + 4], 0
mov dword [esp], eax
call fcn.004215c8
jmp 0x40b4f2
mov eax, dword [0x44342c]
mov dword [esp], eax
call fcn.00421810
mov eax, dword [0x443428]
mov dword [esp], eax
call fcn.00421808
lea esi, [esi]
mov ecx, dword [0x44343c]
mov ebx, dword [0x443438]
xor eax, eax
mov edi, dword [0x443434]
mov ebp, dword [0x443440]
test ecx, ecx
je 0x40ba27
lea eax, [ebx + 1]
xor edx, edx
sub ecx, 1
div edi
lea eax, [ebx + ebx*2]
shl eax, 4
add eax, ebp
mov ebx, dword [eax]
cmp ebx, 1
je 0x40ba78
cmp ebx, 9
je 0x40ba58
movzx eax, byte [esp + 0x3c]
mov ebx, edx
test ecx, ecx
jne 0x40b9fe
test al, al
je 0x40ba3b
mov dword [0x443438], ebx
mov dword [0x44343c], 0
mov dword [esp], ebp
call fcn.0042fa48
mov eax, dword [0x44344c]
mov dword [esp], eax
call fcn.00421808
jmp 0x40b4e7
mov eax, dword [eax + 0x10]
mov dword [0x443438], edx
mov dword [0x44343c], ecx
mov dword [esp], eax
call fcn.0042fa48
jmp 0x40b9e0
mov eax, dword [eax + 8]
mov dword [0x443438], edx
mov dword [0x44343c], ecx
mov dword [esp], eax
call fcn.0042fa48
jmp 0x40b9e0
mov eax, dword [0x443424]
mov dword [esp + 4], 0
mov dword [esp], eax
call fcn.004215c8
mov eax, dword [0x443448]
mov dword [esp + 4], 0
mov dword [esp], eax
call fcn.004215c8
jmp 0x40b4dc
cmp byte [0x443204], 0
jne 0x40cce8
mov ebp, dword [0x443184]
test ebp, ebp
je 0x40baf3
mov dword [esp], 0x443184
call fcn.004203a0
mov eax, dword [0x443154]
test eax, eax
je 0x40bb04
mov dword [esp], eax
call fcn.004217f8
mov eax, dword [0x443150]
mov dword [esp], eax
call fcn.00421800
mov dword [esp], 0x443254
call fcn.004203a0
mov eax, dword [0x443224]
mov dword [esp], eax
call fcn.004217f0
mov eax, dword [0x443200]
mov dword [esp], eax
call fcn.00421810
mov eax, dword [0x4431fc]
mov dword [esp], eax
call fcn.00421808
mov eax, dword [0x4431f0]
mov dword [esp], eax
call fcn.00421808
mov dword [esp], 0x4431e8
call fcn.004203a0
mov dword [esp], 0x4431ec
call fcn.004203a0
jmp 0x40b4d1
mov eax, dword [0x4434c8]
mov dword [esp + 4], 0
mov dword [esp], eax
call fcn.004215c8
mov eax, dword [0x4434e4]
mov dword [esp], eax
call fcn.0042fa48
mov eax, dword [0x4434d0]
mov dword [esp], eax
call fcn.00421810
mov eax, dword [0x4434cc]
mov dword [esp], eax
call fcn.00421808
cmp byte [0x4434b8], 0
jne 0x40ccc8
mov eax, dword [0x4434a4]
mov dword [esp], eax
call fcn.00421910
mov eax, dword [0x4434a0]
sub esp, 4
mov dword [esp], eax
call fcn.00421900
sub esp, 4
jmp 0x40b4c6
mov eax, dword [0x44330c]
mov dword [esp + 4], 0
mov dword [esp], eax
call fcn.004215c8
jmp 0x40b4be
mov eax, dword [0x4432ec]
mov dword [esp + 4], 0
mov dword [esp], eax
call fcn.004215c8
jmp 0x40b4b3
mov eax, dword [0x443650]
mov dword [esp], eax
call fcn.00421808
mov eax, dword [0x443654]
mov dword [esp], eax
call fcn.00421810
jmp 0x40b4a8
mov eax, dword [0x443640]
mov dword [esp + 4], 0
mov dword [esp], eax
call fcn.004215c8
jmp 0x40b49d
mov eax, dword [ebp + 0x14]
test eax, eax
je 0x40bc7f
mov dword [esp + 4], eax
mov dword [esp], str.SDL_RENDER_DRIVER
call fcn.00421650
test eax, eax
je 0x40cee8
mov dword [esp + 4], 0x433e2f
mov dword [esp], str.SDL_RENDER_SCALE_QUALITY
call fcn.00421650
test eax, eax
je 0x40cd88
mov dword [esp + 4], 0x433e2f
mov dword [esp], str.SDL_MOUSE_FOCUS_CLICKTHROUGH
call fcn.00421650
test eax, eax
je 0x40cd68
mov dword [esp + 4], 0x433eb6
mov dword [esp], str.SDL_TOUCH_MOUSE_EVENTS
call fcn.00421650
test eax, eax
je 0x40cd48
mov dword [esp + 4], 0x433eb6
mov dword [esp], str.SDL_VIDEO_X11_NET_WM_BYPASS_COMPOSITOR
call fcn.00421650
test eax, eax
je 0x40cd28
mov dword [esp + 4], 0x433eb6
mov dword [esp], str.SDL_VIDEO_MINIMIZE_ON_FOCUS_LOSS
call fcn.00421650
test eax, eax
je 0x40cca8
mov dword [esp + 4], 0x433e2f
mov dword [esp], str.SDL_JOYSTICK_ALLOW_BACKGROUND_EVENTS
call fcn.00421650
test eax, eax
jne 0x40b301
mov dword [esp + 4], str.Could_not_allow_joystick_background_events
mov dword [esp], 0
call fcn.004216c8
jmp 0x40b301
mov eax, dword [0x443108]
mov dword [esp], eax
call fcn.00421710
mov eax, dword [0x44310c]
mov byte [0x443110], 1
mov dword [esp], eax
call fcn.00421868
mov eax, 0x443114
call fcn.00414f40
mov eax, dword [0x443108]
mov dword [esp], eax
call fcn.004215e0
jmp 0x40b493
cmp byte [0x443204], 0
je 0x40b489
mov eax, dword [0x4431fc]
mov dword [esp], eax
call fcn.00421710
mov eax, dword [0x4431fc]
mov byte [0x443206], 1
mov dword [esp], eax
call fcn.004215e0
mov eax, dword [0x443200]
mov dword [esp], eax
call fcn.00421868
jmp 0x40b489
mov eax, dword [0x443370]
mov dword [esp], eax
call fcn.00421710
mov eax, dword [0x443374]
mov byte [0x443378], 1
mov dword [esp], eax
call fcn.00421868
mov eax, dword [0x443370]
mov dword [esp], eax
call fcn.004215e0
jmp 0x40b47e
cmp byte [0x44347d], 0
je 0x40b473
mov eax, dword [0x443474]
mov dword [esp], eax
call fcn.00421710
mov eax, dword [0x443478]
mov byte [0x44347c], 1
mov dword [esp], eax
call fcn.00421868
mov eax, 0x443490
call fcn.00414f40
mov eax, dword [0x443474]
mov dword [esp], eax
call fcn.004215e0
jmp 0x40b473
mov dword [esp + 0x10], str.sc_cond_init
mov dword [esp + 0xc], 0x8b
mov dword [esp + 8], 0x432e4f
mov dword [esp + 4], 0x431262
mov dword [esp], 0
call fcn.00421700
mov eax, dword [0x443108]
mov dword [esp], eax
call fcn.00421808
jmp 0x40b854
mov dword [esp + 4], str.Server_connected
mov dword [esp], 0
call fcn.00421708
mov eax, dword [0x4430bc]
mov dword [esp + 0x20], eax
movzx eax, byte [ebp + 0xdd]
test al, al
jne 0x40c8f0
mov byte [esp + 0x34], 0
mov dword [esp + 0x28], 0
movzx edi, byte [ebp + 0xf9]
mov edx, edi
test dl, dl
jne 0x40cea8
movzx esi, byte [ebp + 0xfa]
mov edx, esi
test dl, dl
jne 0x40ce70
movzx edx, byte [ebp + 0xde]
test al, al
jne 0x40ce30
test dl, dl
jne 0x40cdf0
mov eax, dword [ebp + 8]
test eax, eax
je 0x40cda8
mov ecx, dword [ebp + 0xa4]
mov dword [esp + 0x30], ecx
mov ecx, dword [ebp + 0x4c]
mov dword [esp], eax
mov dword [esp + 0x38], ecx
call fcn.0042fb28
mov dword [0x443360], eax
test eax, eax
je 0x40d43f
call fcn.00421848
test eax, eax
je 0x40d8fc
mov dword [0x443370], eax
call fcn.00421850
test eax, eax
je 0x40d880
mov dword [0x443374], eax
mov edx, esi
mov eax, ebx
mov word [esp + 0x3c], di
mov al, dl
mov ah, byte [esp + 0x3c]
mov dword [0x44337c], 0
mov word [0x443358], ax
mov eax, dword [esp + 0x30]
mov dword [0x443380], 0
mov dword [0x44335c], eax
mov eax, dword [esp + 0x38]
mov dword [0x443384], 0
mov dword [0x443364], eax
mov eax, edi
mov dword [0x443388], 0
mov dword [0x44338c], 0
mov dword [0x443390], 0
mov dword [0x443394], 0
mov dword [0x443398], 0
mov byte [0x443378], 0
mov word [0x44339c], bx
mov byte [0x44339e], 0
mov dword [0x4433a0], 0xffffffff
mov dword [0x4433a8], 0
mov dword [0x4433ac], 0x80000000
mov dword [0x4433b0], 0xffffffff
mov dword [0x4433b8], 0
mov dword [0x4433bc], 0x80000000
mov dword [0x4433c0], 0x434d8c
mov dword [0x4433c4], 0
test al, al
je 0x40c043
mov dword [0x443350], 0x434cd4
mov eax, esi
test al, al
je 0x40c053
mov dword [0x443354], 0x434cc4
mov eax, dword [0x4c5918]
mov dword [esp + 8], 0x443350
mov dword [esp + 4], str.scrcpy_recorder
mov dword [esp + 0x10], eax
mov eax, dword [0x4c5910]
mov dword [esp], 0x408420
mov dword [esp + 0xc], eax
call fcn.00421820
test eax, eax
je 0x40d5d7
cmp byte [ebp + 0xf9], 0
mov dword [0x44336c], eax
jne 0x40d560
cmp byte [ebp + 0xfa], 0
jne 0x40d57e
mov byte [esp + 0x40], 1
lea esi, [esi]
movzx eax, byte [ebp + 0xdc]
mov byte [esp + 0x30], al
test al, al
jne 0x40cf48
mov dword [esp + 0x44], 0
xor esi, esi
mov dword [esp + 0x3c], 0
mov dword [esp + 0x20], 0
mov dword [esp + 0x4c], 0
mov dword [esp + 0x50], 0
movzx eax, byte [ebp + 0xff]
mov byte [esp + 0x38], al
test al, al
je 0x40c698
mov edi, dword [ebp + 0xc]
mov eax, 0x4430c8
movzx edx, byte [ebp + 0xdd]
mov ecx, dword [ebp + 0xa8]
test edi, edi
mov byte [esp + 0x54], dl
cmove edi, eax
mov eax, dword [ebp + 0x5c]
mov dword [esp + 0x68], ecx
mov dword [esp + 0x98], eax
mov eax, dword [ebp + 0x60]
mov dword [esp + 0x9c], eax
mov eax, dword [ebp + 0x64]
mov dword [esp + 0xa0], eax
mov eax, dword [ebp + 0x68]
mov dword [esp + 0xa4], eax
mov eax, dword [ebp + 0x6c]
mov dword [esp + 0xa8], eax
mov eax, dword [ebp + 0x70]
mov dword [esp + 0xac], eax
mov eax, dword [ebp + 0x74]
mov dword [esp + 0xb0], eax
mov eax, dword [ebp + 0x78]
mov dword [esp + 0xb4], eax
movzx eax, byte [ebp + 0xea]
mov byte [esp + 0x76], al
movzx eax, byte [ebp + 0xec]
mov byte [esp + 0x74], al
movzx eax, byte [ebp + 0x8a]
mov byte [esp + 0x77], al
movzx eax, byte [ebp + 0xdb]
mov byte [esp + 0x60], al
mov eax, dword [ebp + 0xac]
mov dword [esp + 0x48], eax
movzx eax, byte [ebp + 0xe4]
mov byte [esp + 0x64], al
mov eax, dword [ebp + 0xa0]
mov dword [esp + 0x6c], eax
movzx eax, byte [ebp + 0xe5]
mov byte [esp + 0x73], al
mov eax, ebx
mov al, byte [ebp + 0xda]
mov ah, byte [ebp + 0xf7]
mov dword [0x443218], ecx
mov ecx, dword [esp + 0x48]
mov byte [0x443230], 0
mov dword [0x44324c], 0
mov dword [0x443250], 0
mov byte [0x443258], 0
mov dword [0x44325c], 0
mov dword [0x443238], 0
mov byte [0x44314c], dl
mov dword [0x44321c], ecx
mov word [0x443220], ax
call fcn.004203a8
mov dword [0x4431e8], eax
test eax, eax
je 0x40d8cb
call fcn.004203a8
mov dword [0x4431ec], eax
test eax, eax
je 0x40d97a
call fcn.00421848
test eax, eax
je 0x40da29
mov dword [0x4431f0], eax
mov byte [0x4431f4], 1
call fcn.00421848
test eax, eax
je 0x40d4cf
mov dword [0x4431fc], eax
call fcn.00421850
test eax, eax
je 0x40dd5d
mov dword [0x443200], eax
mov byte [0x443204], 0
mov byte [0x443205], 0
cmp byte [0x44314c], 0
je 0x40c2d7
mov ecx, dword [esp + 0x6c]
mov dword [0x443238], ecx
test ecx, ecx
je 0x40c2d7
mov eax, str._unknown_
cmp ecx, 7
ja 0x40c2bf
mov eax, dword [ecx*4 + 0x4355a0]
mov dword [esp + 8], eax
mov dword [esp + 4], str.Initial_display_orientation_set_to__s
mov dword [esp], 0
call fcn.004216f0
mov ecx, dword [esp + 0x54]
mov eax, dword [esp + 0x64]
mov dword [esp], edi
cmp byte [esp + 0x60], 1
sbb edx, edx
neg ecx
neg eax
and eax, 0x10
and edx, 0xffff8000
and ecx, 0x28
add edx, 0xa000
or ecx, eax
mov eax, 0x1fff0000
or ecx, edx
mov dword [esp + 0x14], ecx
mov ecx, dword [esp + 0x68]
cmp cx, 0x8000
movsx edx, cx
cmove edx, eax
mov dword [esp + 4], edx
mov edx, ecx
mov ecx, 0x100
sar edx, 0x10
cmp dx, 0x8000
cmovne eax, edx
mov dword [esp + 8], eax
mov eax, dword [esp + 0x48]
test ax, ax
movzx edx, ax
cmove edx, ecx
shr eax, 0x10
cmove eax, ecx
mov dword [esp + 0xc], edx
movzx eax, ax
mov dword [esp + 0x10], eax
call fcn.00421818
mov dword [0x443224], eax
test eax, eax
je 0x40e0e3
call fcn.00407690
mov edi, eax
test eax, eax
je 0x40da72
mov dword [esp + 4], eax
mov eax, dword [0x443224]
mov dword [esp], eax
call fcn.00421620
cmp byte [esp + 0x54], 0
jne 0x40e362
mov eax, dword [0x443224]
mov dword [esp + 8], 2
mov dword [esp + 4], 0xffffffff
mov dword [esp], eax
call fcn.00421838
mov dword [0x443150], eax
test eax, eax
je 0x40e395
mov dword [esp + 0x54], 0
mov dword [esp + 0x48], edi
lea ecx, [esp + 0xd8]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.00421758
test eax, eax
jne 0x40db0f
mov eax, dword [esp + 0xd8]
test eax, eax
je 0x40db0f
mov dword [esp + 8], eax
mov dword [esp + 4], str.Renderer:__s
mov dword [esp], 0
mov dword [esp + 0x60], eax
call fcn.004216f0
mov eax, dword [esp + 0x60]
mov dword [esp + 8], 6
mov dword [esp + 4], str.opengl
mov dword [esp], eax
mov byte [0x443178], 0
call fcn.0042fae8
test eax, eax
je 0x40e1a1
mov eax, dword [esp + 0x54]
test eax, eax
jne 0x40e300
mov eax, dword [esp + 0x48]
mov dword [0x443154], 0
mov byte [0x44317c], 0
mov dword [0x443184], 0
mov byte [0x443188], 0
test eax, eax
je 0x40c4b6
mov ecx, dword [esp + 0x48]
mov eax, dword [ecx + 0xc]
mov dword [esp + 8], eax
mov eax, dword [ecx + 8]
mov dword [esp + 4], eax
mov eax, dword [0x443150]
mov dword [esp], eax
call fcn.00421670
test eax, eax
jne 0x40e3e3
mov eax, dword [esp + 0x48]
mov dword [esp + 4], eax
mov eax, dword [0x443150]
mov dword [esp], eax
call fcn.00421828
mov dword [0x443154], eax
test eax, eax
je 0x40e4b6
test edi, edi
je 0x40c4db
mov eax, dword [edi + 0x18]
mov dword [esp + 0xd8], eax
lea eax, [esp + 0xd8]
mov dword [esp], eax
call fcn.004203a0
mov dword [esp], edi
call fcn.004217d8
call fcn.004203a8
mov dword [0x443254], eax
test eax, eax
je 0x40e454
mov eax, dword [esp + 0x4c]
mov bl, byte [esp + 0x76]
mov dword [0x443198], 0x443148
mov bh, byte [esp + 0x74]
mov dword [0x443190], eax
mov eax, dword [esp + 0x28]
mov word [0x4431c8], bx
movzx ebx, byte [esp + 0x77]
mov dword [0x443194], eax
mov eax, dword [esp + 0x20]
mov dword [0x44319c], eax
mov eax, dword [esp + 0x3c]
mov dword [0x4431a0], eax
mov eax, dword [esp + 0x44]
mov dword [0x4431a4], eax
mov eax, dword [esp + 0x98]
mov dword [0x4431a8], eax
mov eax, dword [esp + 0x9c]
mov dword [0x4431ac], eax
mov eax, dword [esp + 0xa0]
mov dword [0x4431b0], eax
mov eax, dword [esp + 0xa4]
mov dword [0x4431b4], eax
mov eax, dword [esp + 0xa8]
mov dword [0x4431b8], eax
mov eax, dword [esp + 0xac]
mov dword [0x4431bc], eax
mov eax, dword [esp + 0xb0]
mov dword [0x4431c0], eax
mov eax, dword [esp + 0xb4]
mov dword [0x4431c4], eax
mov eax, ebx
and eax, 1
shl eax, 6
mov edx, eax
or dl, 0x80
test bl, 2
cmovne eax, edx
mov edx, eax
or dh, 1
test bl, 4
cmovne eax, edx
mov edx, eax
or dh, 2
test bl, 8
cmovne eax, edx
mov edx, eax
or dh, 4
test bl, 0x10
cmovne eax, edx
mov edx, eax
or dh, 8
and ebx, 0x20
cmovne eax, edx
mov word [0x4431ca], ax
xor eax, eax
mov dword [0x4431cc], 0
cmp byte [0x44314c], 0
mov dword [0x4431d0], 0
mov dword [0x4431d4], 0
mov word [0x4431d8], ax
mov dword [0x4431e0], 1
mov dword [0x4431e4], 0
jne 0x40e424
mov dword [0x443148], 0x434d50
mov eax, dword [0x4431a0]
test eax, eax
je 0x40c651
cmp byte [eax + 4], 0
je 0x40c651
mov dword [esp], 1
call fcn.00421638
test eax, eax
jne 0x40e7eb
cmp byte [ebp + 0xdd], 0
je 0x40c698
mov eax, dword [ebp + 0xb8]
mov edi, dword [ebp + 0xbc]
mov edx, 0x44331c
mov ebx, dword [0x443324]
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x20]
mov dword [esp + 0x28], edi
lea ecx, [ebx + 1]
or eax, edi
jne 0x40db92
mov dword [edx + 8], ecx
mov dword [edx + ebx*4], 0x443148
lea esi, [esi]
cmp byte [ebp + 0xde], 0
jne 0x40d38b
movzx eax, byte [ebp + 0xf9]
mov byte [esp + 0x48], al
test al, al
jne 0x40d32e
movzx eax, byte [ebp + 0xfa]
mov byte [esp + 0x4c], al
test al, al
jne 0x40d3e2
movzx eax, byte [ebp + 0xdc]
mov byte [esp + 0x44], al
test al, al
je 0x40d180
movzx eax, byte [ebp + 0xdf]
mov byte [esp + 0x44], al
test al, al
jne 0x40d638
mov eax, dword [ebp + 0xd0]
or eax, dword [ebp + 0xd4]
jne 0x40d192
mov eax, dword [ebp + 0x58]
test eax, eax
jne 0x40d92a
lea eax, [esp + 0xd8]
mov dword [esp], eax
call fcn.004215d0
test eax, eax
je 0x40ca2a
mov eax, dword [esp + 0xd8]
cmp eax, 0x100
je 0x40da10
sub eax, 0x8001
cmp eax, 0xa
ja case.0x40c745.32771
jmp dword [eax*4 + 0x434720]
mov dword [esp + 0x10], str.sc_thread_create
xor esi, esi
mov dword [esp + 0xc], 0x14
mov dword [esp + 8], 0x432e4f
mov dword [esp + 4], 0x431262
mov dword [esp], 0
call fcn.00421700
mov dword [esp + 4], str.Could_not_create_server_thread
mov dword [esp], 0
call fcn.00421700
mov byte [esp + 0x3c], 0
mov byte [esp + 0x40], 0
mov byte [esp + 0x28], 0
mov byte [esp + 0x34], 0
mov dword [esp + 0x20], 1
jmp 0x40b44b
mov dword [esp], edx
call dword [0x4c5a0c]
sub esp, 4
jmp 0x40b552
mov dword [esp], edx
call dword [0x4c5a0c]
sub esp, 4
jmp 0x40b576
mov dword [esp], edx
call dword [0x4c5a0c]
sub esp, 4
jmp 0x40b52e
mov dword [esp], 0x10
call fcn.00421730
test eax, eax
je 0x40b37d
call fcn.00421778
mov dword [esp + 4], str.Could_not_initialize_SDL_audio:__s
mov dword [esp + 8], eax
mov dword [esp], 0
call fcn.00421700
jmp 0x40c9f0
mov dword [esp + 0x10], str.sc_mutex_init
mov dword [esp + 0xc], 0x46
mov dword [esp + 8], 0x432e4f
mov dword [esp + 4], 0x431262
mov dword [esp], 0
call fcn.00421700
mov dword [esp + 0x10], str.sc_intr_init
mov dword [esp + 0xc], 0xb
mov dword [esp + 8], str..._app_src_util_intr.c
mov dword [esp + 4], 0x431262
mov dword [esp], 0
call fcn.00421700
mov eax, dword [0x44310c]
mov dword [esp], eax
call fcn.00421810
mov eax, dword [0x443108]
mov dword [esp], eax
call fcn.00421808
jmp 0x40b854
mov dword [esp + 4], str.Could_not_set_CtrlC_handler
mov dword [esp], 0
call fcn.004216c8
jmp 0x40b3c6
call fcn.004217e0
jmp 0x40b3db
movzx edx, byte [ebp + 0xdc]
mov dword [esp + 0x28], 0
mov byte [esp + 0x34], dl
test dl, dl
je 0x40bec9
mov esi, dword [ebp + 0x10]
mov dword [0x443480], 0
mov dword [0x443484], 0
mov dword [0x443488], 0
mov dword [0x44348c], 0
call fcn.00421848
test eax, eax
je 0x40d48c
mov dword [0x443474], eax
call fcn.00421850
test eax, eax
je 0x40dad1
mov dword [0x443478], eax
call fcn.00421848
test eax, eax
je 0x40dded
mov dword [0x443490], eax
mov dword [0x443494], 0
mov dword [0x443498], 0
mov byte [0x44349c], 0
mov eax, dword [esp + 0x20]
mov dword [esp], eax
call fcn.0042fb28
mov dword [0x443468], eax
test eax, eax
je 0x40e571
mov eax, str._sdcard_Download_
test esi, esi
mov word [0x44347c], bx
cmove esi, eax
mov dword [esp + 0x28], 0x443468
movzx eax, byte [ebp + 0xdd]
mov dword [0x44346c], esi
jmp 0x40bec9
call fcn.00421778
mov dword [esp + 4], str.Could_not_initialize_SDL_video:__s
mov dword [esp + 8], eax
mov dword [esp], 0
call fcn.00421700
lea esi, [esi]
mov byte [esp + 0x3c], 0
mov esi, 1
mov byte [esp + 0x40], 0
mov byte [esp + 0x28], 0
mov byte [esp + 0x34], 0
mov dword [esp + 0x20], 1
jmp 0x40b44b
lea eax, [esp + 0xd8]
call fcn.0041c530
test al, al
jne 0x40c70e
mov dword [esp + 0x20], 1
mov dword [esp + 4], 0
mov dword [esp], 0x401510
call fcn.00421658
jmp 0x40ca61
cmp dword [esp + 0xd8], 0x8001
je 0x40cf08
lea eax, [esp + 0xd8]
mov dword [esp], eax
call fcn.004216a8
test eax, eax
jne 0x40ca50
mov dword [esp + 4], str.quit...
mov dword [esp], 0
call fcn.00421708
cmp byte [ebp + 0xdd], 0
jne 0x40d4bd
cmp byte [esp + 0x44], 0
je 0x40cabd
mov eax, dword [0x443650]
mov dword [esp], eax
call fcn.00421710
mov eax, dword [0x443650]
mov byte [0x443658], 1
mov dword [esp], eax
call fcn.004215e0
movzx eax, byte [esp + 0x30]
movzx edi, byte [esp + 0x44]
mov ebx, esi
mov byte [esp + 0x3c], al
mov eax, esi
test al, al
je 0x40e902
mov eax, dword [0x4434cc]
mov dword [esp], eax
call fcn.00421710
mov eax, dword [0x4434d0]
mov byte [0x4434d4], 1
mov dword [esp], eax
call fcn.00421868
mov eax, dword [0x4434cc]
mov dword [esp], eax
call fcn.004215e0
mov esi, dword [0x4434e8]
test esi, esi
je 0x40cb32
mov eax, dword [esi]
mov dword [esp], eax
call fcn.00421710
mov eax, dword [esi + 4]
mov byte [esi + 8], 1
mov dword [esp], eax
call fcn.00421868
mov eax, dword [esi]
mov dword [esp], eax
call fcn.004215e0
movzx esi, byte [0x4434b0]
mov eax, esi
test al, al
jne 0x40cc70
movzx eax, byte [esp + 0x40]
mov esi, ebx
mov byte [esp + 0x28], al
mov ebp, dword [esp + 0x50]
test ebp, ebp
je 0x40cb6c
mov eax, dword [ebp + 4]
mov dword [esp], eax
call fcn.00421810
mov eax, dword [ebp]
mov dword [esp], eax
call fcn.00421808
cmp byte [esp + 0x30], 0
je 0x40b468
mov eax, dword [0x443428]
mov dword [esp], eax
call fcn.00421710
mov eax, dword [0x44342c]
mov byte [0x443430], 1
mov dword [esp], eax
call fcn.00421868
mov eax, dword [0x443428]
mov dword [esp], eax
call fcn.004215e0
jmp 0x40b468
mov dword [esp + 4], str.Device_disconnected
mov dword [esp], 0
call fcn.004216c8
mov dword [esp + 0x20], 2
jmp 0x40ca32
mov eax, dword [esp + 0xec]
mov dword [esp], eax
call dword [esp + 0xe8]
jmp 0x40c70e
mov dword [esp + 4], str.Controller_error
mov dword [esp], 0
call fcn.00421700
jmp 0x40ca2a
mov dword [esp + 4], str.Time_limit_reached
mov dword [esp], 0
call fcn.004216f0
mov dword [esp + 0x20], 0
jmp 0x40ca32
mov dword [esp + 4], str.Recorder_error
mov dword [esp], 0
call fcn.00421700
jmp 0x40ca2a
mov dword [esp + 4], str.Demuxer_error
mov dword [esp], 0
call fcn.00421700
jmp 0x40ca2a
mov dword [esp + 4], str.AOA_open_error
mov dword [esp], 0
call fcn.00421700
jmp 0x40ca2a
mov eax, 1
xchg byte [0x4434c0], al
mov eax, dword [0x4434b4]
mov dword [esp + 4], eax
mov eax, dword [0x4434a0]
mov ebx, esi
mov dword [esp], eax
call fcn.004218b8
sub esp, 8
movzx eax, byte [esp + 0x40]
mov byte [esp + 0x28], al
jmp 0x40cb4e
mov dword [esp + 4], str.Could_not_disable_minimize_on_focus_loss
mov dword [esp], 0
call fcn.004216c8
jmp 0x40bd0b
mov eax, dword [0x4434bc]
mov dword [esp + 4], 0
mov dword [esp], eax
call fcn.004215c8
jmp 0x40bbb9
mov eax, dword [0x4431f8]
mov dword [esp + 4], 0
mov dword [esp], eax
call fcn.004215c8
jmp 0x40badd
mov eax, dword [0x443470]
mov dword [esp + 4], 0
mov dword [esp], eax
call fcn.004215c8
jmp 0x40b8fd
mov dword [esp + 4], str.Could_not_disable_X11_compositor_bypass
mov dword [esp], 0
call fcn.004216c8
jmp 0x40bcef
mov dword [esp + 4], str.Could_not_disable_synthetic_mouse_events
mov dword [esp], 0
call fcn.004216c8
jmp 0x40bcd3
mov dword [esp + 4], str.Could_not_enable_mouse_focus_clickthrough
mov dword [esp], 0
call fcn.004216c8
jmp 0x40bcb7
mov dword [esp + 4], str.Could_not_enable_linear_filtering
mov dword [esp], 0
call fcn.004216c8
jmp 0x40bc9b
mov byte [esp + 0x40], 0
jmp 0x40c0b0
call fcn.00421778
mov dword [esp + 4], str.SDL_WaitEvent___error:__s
mov dword [esp + 8], eax
mov dword [esp], 0
call fcn.00421700
nop
mov dword [esp + 4], str.Server_connection_failed
mov dword [esp], 0
call fcn.00421700
jmp 0x40c9f0
mov eax, dword [0x443300]
mov dword [0x443344], 0x434126
mov dword [0x443340], 0
mov dword [0x443334], 0x434cb4
lea edx, [eax + 1]
mov dword [0x443300], edx
mov dword [eax*4 + 0x4432f8], 0x443334
jmp 0x40bf02
mov eax, dword [0x4432e0]
mov dword [0x443328], 0x434120
mov dword [0x443324], 0
mov dword [0x443318], 0x434cb4
lea ecx, [eax + 1]
mov dword [0x4432e0], ecx
mov dword [eax*4 + 0x4432d8], 0x443318
jmp 0x40befa
mov edx, dword [0x443134]
mov dword [0x443304], 0x434126
mov dword [0x443300], 0
mov dword [0x443308], edx
mov dword [0x443310], 0x434d90
mov dword [0x443314], ebp
jmp 0x40beeb
mov edx, dword [0x443130]
mov dword [0x4432e4], 0x434120
mov dword [0x4432e0], 0
mov dword [0x4432e8], edx
mov dword [0x4432f0], 0x434d94
mov dword [0x4432f4], 0
jmp 0x40beda
mov dword [esp + 4], str.Could_not_set_render_driver
mov dword [esp], 0
call fcn.004216c8
jmp 0x40bc7f
mov eax, dword [esp + 0xec]
mov dword [esp], eax
call dword [esp + 0xe8]
jmp 0x40ca61
call fcn.00421778
mov dword [esp + 4], str.Could_not_initialize_SDL_gamepad:__s
mov dword [esp + 8], eax
mov dword [esp], 0
call fcn.00421700
jmp 0x40c9f0
mov dword [esp], 0xc00
mov esi, dword [0x443138]
mov dword [0x443434], 0
mov dword [0x443438], 0
mov dword [0x44343c], 0
mov dword [0x443440], 0
call fcn.0042fa98
test eax, eax
je 0x40d9f0
mov dword [0x443434], 0x40
mov dword [0x443440], eax
call fcn.00421848
test eax, eax
je 0x40d9b7
mov dword [0x44344c], eax
mov dword [0x443444], esi
mov dword [0x443450], 0
mov dword [0x443454], 0
mov dword [0x443458], 0x434cf8
mov dword [0x44345c], 0x443420
call fcn.00421848
test eax, eax
je 0x40dd12
mov dword [0x443428], eax
call fcn.00421850
test eax, eax
je 0x40e321
mov dword [0x44342c], eax
mov eax, dword [ebp + 0x50]
mov dword [0x443420], esi
mov esi, dword [ebp + 0x54]
cmp eax, 5
mov edi, dword [ebp + 0x58]
mov dword [esp + 0x38], eax
sete al
cmp esi, 5
mov dword [esp + 0x44], esi
sete dl
mov dword [esp + 0x48], edi
or eax, edx
cmp edi, 3
mov byte [0x443430], 0
mov dword [0x443460], 0x434d88
sete dl
mov dword [0x443464], 0
or al, dl
mov esi, eax
jne 0x40d683
mov dword [esp + 0x44], 0
mov dword [esp + 0x3c], 0
mov dword [esp + 0x20], 0
mov dword [esp + 0x50], 0
cmp dword [esp + 0x38], 3
je 0x40dd9b
cmp dword [esp + 0x38], 4
mov dword [esp + 0x48], 0
je 0x40e02c
mov eax, dword [ebp + 0x54]
cmp eax, 3
je 0x40df40
cmp eax, 4
je 0x40dfa6
cmp dword [ebp + 0x58], 2
je 0x40decf
mov eax, dword [esp + 0x48]
test eax, eax
je 0x40d0c3
mov dword [0x443508], eax
mov dword [esp + 0x48], 0x443508
mov eax, dword [esp + 0x50]
mov dword [esp + 4], str.Starting_controller_thread
mov dword [esp], 0
mov dword [0x443450], eax
mov eax, dword [esp + 0x48]
mov dword [0x443454], eax
call fcn.00421708
mov eax, dword [0x4c5918]
mov dword [esp + 8], 0x443420
mov dword [esp + 4], str.scrcpy_ctl
mov dword [esp + 0x10], eax
mov eax, dword [0x4c5910]
mov dword [esp], 0x404dc0
mov dword [esp + 0xc], eax
call fcn.00421820
test eax, eax
je 0x40db37
mov dword [esp + 4], str.Starting_receiver_thread
mov dword [esp], 0
mov dword [0x443424], eax
call fcn.00421708
mov eax, dword [0x4c5918]
mov dword [esp + 8], 0x443444
mov dword [esp + 4], str.scrcpy_receiver
mov dword [esp + 0x10], eax
mov eax, dword [0x4c5910]
mov dword [esp], 0x4078d0
mov dword [esp + 0xc], eax
call fcn.00421820
test eax, eax
je 0x40e11f
mov dword [0x443448], eax
mov dword [esp + 0x4c], 0x443420
jmp 0x40c0ed
mov eax, dword [ebp + 0xd0]
or eax, dword [ebp + 0xd4]
je 0x40c70e
call fcn.00421848
test eax, eax
je 0x40d59c
mov dword [0x443650], eax
call fcn.00421850
test eax, eax
je 0x40de9e
mov dword [0x443654], eax
lea eax, [esp + 0x80]
mov dword [esp], eax
mov eax, dword [esp + 0x5c]
mov byte [0x443658], 0
call eax
mov ebx, dword [0x443668]
mov edi, dword [0x44366c]
sub esp, 4
mov eax, dword [esp + 0x80]
mov edx, dword [esp + 0x84]
mov dword [esp + 0x20], eax
mov eax, ebx
or eax, edi
mov dword [esp + 0x24], edx
je 0x40df74
lea eax, [esp + 0x78]
mov dword [esp + 8], 0xf4240
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], 0
mov dword [esp], ebx
mov dword [esp + 4], edi
call fcn.00421a90
mov ecx, edx
mov edx, eax
mov eax, dword [esp + 0x78]
or eax, dword [esp + 0x7c]
je 0x40de7d
lea eax, [esp + 0x78]
mov edx, dword [esp + 0x24]
mov dword [esp + 8], ebx
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x20]
mov dword [esp + 0xc], edi
mov dword [esp], eax
mov dword [esp + 4], edx
call fcn.00421a90
imul ecx, dword [esp + 0x7c], 0xf4240
mov dword [esp + 8], ebx
mov dword [esp + 0x20], eax
mov eax, 0xf4240
mov dword [esp + 0x28], edx
mul dword [esp + 0x78]
mov dword [esp + 0xc], edi
add edx, ecx
mov dword [esp], eax
mov dword [esp + 4], edx
call fcn.0042fc70
imul edi, dword [esp + 0x28], 0xf4240
mov ecx, eax
mov ebx, edx
mov eax, 0xf4240
mul dword [esp + 0x20]
add edx, edi
add eax, ecx
adc edx, ebx
add eax, dword [ebp + 0xd0]
adc edx, dword [ebp + 0xd4]
mov dword [esp + 8], 0x443640
mov dword [esp + 0x20], eax
mov eax, dword [0x4c5918]
mov dword [esp + 4], str.scrcpy_timeout
mov dword [esp + 0x10], eax
mov eax, dword [0x4c5910]
mov dword [esp], 0x411900
mov dword [esp + 0xc], eax
mov dword [esp + 0x24], edx
call fcn.00421820
mov ecx, dword [esp + 0x20]
mov ebx, dword [esp + 0x24]
test eax, eax
je 0x40e2b5
mov dword [0x443640], eax
mov dword [0x443648], ecx
mov dword [0x44364c], ebx
mov dword [0x44365c], 0x434d84
mov dword [0x443660], 0
mov byte [esp + 0x44], 1
cmp byte [ebp + 0xdc], 0
jne 0x40c703
jmp 0x40c70e
mov eax, dword [0x4432e4]
mov dword [esp + 4], str.Demuxer__s:_starting_thread
mov dword [esp], 0
mov dword [esp + 8], eax
call fcn.00421708
mov eax, dword [0x4c5918]
mov dword [esp + 8], 0x4432d8
mov dword [esp + 4], str.scrcpy_demuxer
mov dword [esp + 0x10], eax
mov eax, dword [0x4c5910]
mov dword [esp], 0x406920
mov dword [esp + 0xc], eax
call fcn.00421820
test eax, eax
je 0x40dbde
mov dword [0x4432ec], eax
jmp 0x40c6b8
mov eax, dword [ebp + 0xc8]
mov edx, dword [ebp + 0xcc]
mov ecx, dword [ebp + 0xc0]
mov ebx, dword [ebp + 0xc4]
mov dword [0x443260], 0x434d78
mov dword [0x443278], eax
mov eax, dword [0x443340]
mov dword [0x44327c], edx
lea edx, [eax + 1]
mov dword [0x443268], ecx
mov dword [0x44326c], ebx
mov dword [0x443340], edx
mov dword [eax*4 + 0x443338], 0x443260
jmp 0x40c6a5
mov eax, dword [0x443304]
mov dword [esp + 4], str.Demuxer__s:_starting_thread
mov dword [esp], 0
mov dword [esp + 8], eax
call fcn.00421708
mov eax, dword [0x4c5918]
mov dword [esp + 8], 0x4432f8
mov dword [esp + 4], str.scrcpy_demuxer
mov dword [esp + 0x10], eax
mov eax, dword [0x4c5910]
mov dword [esp], 0x406920
mov dword [esp + 0xc], eax
call fcn.00421820
test eax, eax
je 0x40dc6d
mov dword [0x44330c], eax
jmp 0x40c6cb
mov dword [esp + 0x10], str.sc_recorder_init
mov dword [esp + 0xc], 0x2e9
mov dword [esp + 8], str..._app_src_recorder.c
mov dword [esp + 4], 0x431262
mov dword [esp], 0
call fcn.00421700
mov byte [esp + 0x3c], 0
mov esi, 1
mov byte [esp + 0x40], 0
mov byte [esp + 0x28], 0
mov dword [esp + 0x20], 1
jmp 0x40b44b
mov dword [esp + 0x10], str.sc_mutex_init
mov dword [esp + 0xc], 0x46
mov dword [esp + 8], 0x432e4f
mov dword [esp + 4], 0x431262
mov dword [esp], 0
call fcn.00421700
jmp 0x40c9f0
mov eax, dword [0x443224]
mov dword [esp], eax
call fcn.00421738
jmp 0x40ca95
mov dword [esp + 0x10], str.sc_mutex_init
mov dword [esp + 0xc], 0x46
mov dword [esp + 8], 0x432e4f
mov dword [esp + 4], 0x431262
mov dword [esp], 0
call fcn.00421700
mov eax, dword [0x4431f0]
mov dword [esp], eax
call fcn.00421808
mov dword [esp], 0x4431e8
call fcn.004203a0
mov dword [esp], 0x4431ec
call fcn.004203a0
mov byte [esp + 0x44], 0
movzx eax, byte [esp + 0x30]
mov byte [esp + 0x38], 0
mov byte [esp + 0x4c], 0
mov byte [esp + 0x48], 0
movzx ebx, byte [esp + 0x30]
mov dword [esp + 0x20], 1
xor edi, edi
mov byte [esp + 0x30], al
mov byte [esp + 0x3c], bl
mov ebx, esi
jmp 0x40cacd
mov eax, dword [0x4432e0]
mov dword [eax*4 + 0x4432d8], 0x443350
lea edx, [eax + 1]
mov dword [0x4432e0], edx
jmp 0x40c09b
mov eax, dword [0x443300]
mov dword [eax*4 + 0x4432f8], 0x443354
lea edx, [eax + 1]
mov dword [0x443300], edx
jmp 0x40c0a8
mov dword [esp + 0x10], str.sc_mutex_init
mov dword [esp + 0xc], 0x46
mov dword [esp + 8], 0x432e4f
mov dword [esp + 4], 0x431262
mov dword [esp], 0
call fcn.00421700
mov byte [esp + 0x44], 0
movzx eax, byte [esp + 0x30]
jmp 0x40d539
mov dword [esp + 0x10], str.sc_thread_create
mov esi, 1
mov dword [esp + 0xc], 0x14
mov dword [esp + 8], 0x432e4f
mov dword [esp + 4], 0x431262
mov dword [esp], 0
call fcn.00421700
mov dword [esp + 4], str.Could_not_start_recorder_thread
mov dword [esp], 0
call fcn.00421700
mov byte [esp + 0x3c], 0
mov byte [esp + 0x40], 0
mov byte [esp + 0x28], 1
mov dword [esp + 0x20], 1
jmp 0x40b44b
lea edx, [esp + 0xd8]
mov eax, 0x443420
mov dword [esp + 0xd8], 0xa
mov dword [esp + 0xe0], 0
call fcn.00409e70
test al, al
je 0x40de64
mov eax, dword [ebp + 0xd0]
or eax, dword [ebp + 0xd4]
mov byte [esp + 0x44], 0
je 0x40d31c
jmp 0x40d192
call fcn.00421848
test eax, eax
je 0x40dcca
mov dword [0x4434f0], eax
call fcn.00421850
test eax, eax
je 0x40e4eb
mov dword [esp], 0x4434a0
mov dword [0x4434f4], eax
mov byte [0x4434f8], 0
mov dword [0x443500], 0
mov dword [0x443504], 0
mov dword [0x4434a4], 0
call fcn.004218a8
sub esp, 4
test eax, eax
jne 0x40e403
mov edx, dword [esp + 0x20]
lea ecx, [esp + 0xd8]
mov eax, 0x4434a0
call fcn.00415910
test al, al
je 0x40e55e
mov eax, dword [esp + 0xe4]
mov ecx, dword [esp + 0xe0]
mov dword [esp + 4], str.USB_device:__s___04x:_04x___s__s
mov edi, dword [esp + 0xdc]
mov dword [esp + 0x3c], eax
mov dword [esp + 0x18], eax
movzx eax, word [esp + 0xea]
mov dword [esp + 0x14], ecx
mov dword [esp + 0x10], eax
movzx eax, word [esp + 0xe8]
mov dword [esp + 8], edi
mov dword [esp + 0xc], eax
xor eax, eax
mov dword [esp], eax
mov dword [esp + 0x4c], ecx
call fcn.004216f0
mov edx, dword [esp + 0xd8]
mov dword [esp + 4], 0x4434a4
mov dword [esp], edx
mov dword [esp + 0x50], edx
call fcn.004218a0
test eax, eax
push edx
push edx
mov edx, dword [esp + 0x50]
js 0x40e5d3
xor ecx, ecx
mov byte [0x4434b0], 0
mov byte [0x4434b8], 0
mov dword [0x4434a8], ecx
mov dword [0x4434ac], ecx
test edx, edx
je 0x40d7a5
mov dword [esp], edx
call fcn.00421888
push eax
mov dword [esp], edi
call fcn.0042fa48
mov eax, dword [esp + 0x4c]
mov dword [esp], eax
call fcn.0042fa48
mov eax, dword [esp + 0x3c]
mov dword [esp], eax
call fcn.0042fa48
mov ecx, 0x4434f0
mov edx, 0x4434a0
mov eax, 0x4434c4
call fcn.00415810
mov byte [esp + 0x4c], al
test al, al
je 0x40e7c6
xor eax, eax
cmp dword [esp + 0x38], 5
mov dword [esp + 0x20], eax
je 0x40e73e
xor eax, eax
cmp dword [esp + 0x44], 5
mov dword [esp + 0x3c], eax
je 0x40e6cf
xor eax, eax
cmp dword [esp + 0x48], 3
mov dword [esp + 0x44], eax
je 0x40e65e
xor edi, edi
mov dword [esp + 4], str.Starting_AOA_thread
mov dword [esp], edi
call fcn.00421708
mov eax, dword [0x4c5918]
mov dword [esp + 8], 0x4434c4
mov dword [esp + 4], str.scrcpy_aoa
mov dword [esp + 0x10], eax
mov eax, dword [0x4c5910]
mov dword [esp], 0x413210
mov dword [esp + 0xc], eax
call fcn.00421820
test eax, eax
je 0x40e8c1
mov dword [0x4434c8], eax
mov eax, dword [ebp + 0x50]
mov dword [esp + 0x50], 0x4434f0
movzx esi, byte [esp + 0x4c]
mov dword [esp + 0x38], eax
jmp 0x40d071
mov dword [esp + 0x10], str.sc_cond_init
mov dword [esp + 0xc], 0x8b
mov dword [esp + 8], 0x432e4f
mov dword [esp + 4], 0x431262
mov dword [esp], 0
call fcn.00421700
mov eax, dword [0x443370]
mov dword [esp], eax
call fcn.00421808
mov eax, dword [0x443360]
mov dword [esp], eax
call fcn.0042fa48
jmp 0x40d46b
mov dword [esp + 0x10], str.sc_frame_buffer_init
mov dword [esp + 0xc], 0xd
mov dword [esp + 8], str..._app_src_frame_buffer.c
mov dword [esp + 4], 0x431262
mov dword [esp], 0
call fcn.00421700
jmp 0x40d520
mov dword [esp + 0x10], str.sc_mutex_init
mov dword [esp + 0xc], 0x46
mov dword [esp + 8], 0x432e4f
mov dword [esp + 4], 0x431262
mov dword [esp], 0
call fcn.00421700
jmp 0x40d8b9
call fcn.004216c0
mov ebx, eax
test eax, eax
jle 0x40c70e
mov edi, dword [esp + 0x58]
jmp 0x40d94b
add edi, 1
cmp ebx, edi
je 0x40c70e
mov dword [esp], edi
call fcn.00421728
test eax, eax
je 0x40d940
lea eax, [esp + 0xd8]
mov dword [esp + 0xe0], edi
mov dword [esp], eax
mov dword [esp + 0xd8], 0x653
call fcn.004216a0
jmp 0x40d940
mov dword [esp + 0x10], str.sc_frame_buffer_init
mov dword [esp + 0xc], 0x13
mov dword [esp + 8], str..._app_src_frame_buffer.c
mov dword [esp + 4], 0x431262
mov dword [esp], 0
call fcn.00421700
mov dword [esp], 0x4431e8
call fcn.004203a0
jmp 0x40d520
mov dword [esp + 0x10], str.sc_mutex_init
mov dword [esp + 0xc], 0x46
mov dword [esp + 8], 0x432e4f
mov dword [esp + 4], 0x431262
mov dword [esp], 0
call fcn.00421700
mov eax, dword [0x443440]
mov dword [esp], eax
call fcn.0042fa48
movzx eax, byte [esp + 0x40]
movzx esi, byte [esp + 0x30]
mov byte [esp + 0x3c], 0
mov dword [esp + 0x20], 1
mov byte [esp + 0x28], al
jmp 0x40b44b
mov dword [esp + 4], str.User_requested_to_quit
mov dword [esp], 0
call fcn.00421708
jmp 0x40cc0e
mov dword [esp + 0x10], str.sc_mutex_init
mov dword [esp + 0xc], 0x46
mov dword [esp + 8], 0x432e4f
mov dword [esp + 4], 0x431262
mov dword [esp], 0
call fcn.00421700
mov dword [esp], 0x4431e8
call fcn.004203a0
mov dword [esp], 0x4431ec
call fcn.004203a0
jmp 0x40d520
cmp byte [esp + 0x54], 0
mov dword [esp + 4], str.Could_not_load_icon
mov dword [esp], 0
je 0x40e317
call fcn.004216c8
movzx eax, byte [esp + 0x73]
mov dword [esp + 8], 2
mov dword [esp + 4], 0xffffffff
mov dword [esp + 0x54], eax
mov eax, dword [0x443224]
mov dword [esp], eax
call fcn.00421838
mov dword [0x443150], eax
test eax, eax
je 0x40e53e
mov dword [esp + 0x48], 0
jmp 0x40c3c6
mov dword [esp + 0x10], str.sc_cond_init
mov dword [esp + 0xc], 0x8b
mov dword [esp + 8], 0x432e4f
mov dword [esp + 4], 0x431262
mov dword [esp], 0
call fcn.00421700
mov eax, dword [0x443474]
mov dword [esp], eax
call fcn.00421808
jmp 0x40c9f0
mov dword [esp + 8], str._unknown_
mov dword [esp + 4], str.Renderer:__s
mov dword [esp], 0
call fcn.004216f0
mov byte [0x443178], 0
jmp 0x40c437
mov dword [esp + 0x10], str.sc_thread_create
mov dword [esp + 0xc], 0x14
mov dword [esp + 8], 0x432e4f
mov dword [esp + 4], 0x431262
mov dword [esp], 0
call fcn.00421700
mov dword [esp + 4], str.Could_not_start_controller_thread
mov dword [esp], 0
call fcn.00421700
mov byte [esp + 0x44], 0
xor eax, eax
mov byte [esp + 0x38], 0
mov byte [esp + 0x4c], 0
mov byte [esp + 0x48], 0
jmp 0x40d539
mov eax, dword [esp + 0x20]
mov dword [0x443324], ecx
mov edx, 0x4433c8
mov ecx, 1
mov dword [ebx*4 + 0x44331c], 0x4433d4
xor ebx, ebx
mov dword [0x4433d8], eax
mov dword [0x4433dc], edi
mov byte [0x4433e0], 1
mov dword [0x4433d0], 0
mov dword [0x4433d4], 0x434d6c
jmp 0x40c688
mov dword [esp + 0x10], str.sc_thread_create
mov dword [esp + 0xc], 0x14
mov dword [esp + 8], 0x432e4f
mov dword [esp + 4], 0x431262
mov dword [esp], 0
call fcn.00421700
mov eax, dword [0x4432e4]
mov dword [esp + 4], str.Demuxer__s:_could_not_start_thread
mov dword [esp], 0
mov dword [esp + 8], eax
call fcn.00421700
mov byte [esp + 0x44], 0
movzx eax, byte [esp + 0x30]
mov byte [esp + 0x4c], 0
mov byte [esp + 0x48], 0
jmp 0x40d539
call fcn.00421778
mov dword [esp + 4], str.SDL_WaitEvent___error:__s
mov dword [esp + 8], eax
mov dword [esp], 0
call fcn.00421700
lea esi, [esi]
mov dword [esp + 0x20], 1
jmp 0x40b807
mov dword [esp + 0x10], str.sc_thread_create
mov dword [esp + 0xc], 0x14
mov dword [esp + 8], 0x432e4f
mov dword [esp + 4], 0x431262
mov dword [esp], 0
call fcn.00421700
mov eax, dword [0x443304]
mov dword [esp + 4], str.Demuxer__s:_could_not_start_thread
mov dword [esp], 0
mov dword [esp + 8], eax
call fcn.00421700
mov byte [esp + 0x44], 0
movzx eax, byte [esp + 0x30]
mov byte [esp + 0x4c], 0
jmp 0x40d539
mov dword [esp + 0x10], str.sc_mutex_init
mov dword [esp + 0xc], 0x46
mov dword [esp + 8], 0x432e4f
mov dword [esp + 4], 0x431262
mov dword [esp], 0
call fcn.00421700
mov eax, esi
mov dword [esp + 0x20], 1
mov byte [esp + 0x3c], al
movzx eax, byte [esp + 0x40]
mov byte [esp + 0x28], al
jmp 0x40b44b
mov dword [esp + 0x10], str.sc_mutex_init
mov dword [esp + 0xc], 0x46
mov dword [esp + 8], 0x432e4f
mov dword [esp + 4], 0x431262
mov dword [esp], 0
call fcn.00421700
mov eax, dword [0x44344c]
mov dword [esp], eax
call fcn.00421808
mov eax, dword [0x443440]
mov dword [esp], eax
call fcn.0042fa48
jmp 0x40d9f0
mov dword [esp + 0x10], str.sc_cond_init
mov dword [esp + 0xc], 0x8b
mov dword [esp + 8], 0x432e4f
mov dword [esp + 4], 0x431262
mov dword [esp], 0
call fcn.00421700
mov eax, dword [0x4431fc]
mov dword [esp], eax
call fcn.00421808
jmp 0x40d4fb
movzx eax, byte [ebp + 0xe9]
mov edx, dword [ebp + 0xe0]
mov dword [esp + 0x48], 0
mov dword [0x443514], 0x443420
mov dword [0x44351c], edx
mov byte [0x443520], al
mov dword [0x443518], 0
mov word [0x44350c], bx
mov dword [0x443510], 0x434cfc
mov dword [esp + 0x20], 0x44350c
jmp 0x40d08f
mov dword [esp + 0x10], str.sc_mutex_init
mov dword [esp + 0xc], 0x46
mov dword [esp + 8], 0x432e4f
mov dword [esp + 4], 0x431262
mov dword [esp], 0
call fcn.00421700
mov dword [esp + 0x10], str.sc_intr_init
mov dword [esp + 0xc], 0xb
mov dword [esp + 8], str..._app_src_util_intr.c
mov dword [esp + 4], 0x431262
mov dword [esp], 0
call fcn.00421700
mov eax, dword [0x443478]
mov dword [esp], eax
call fcn.00421810
mov eax, dword [0x443474]
mov dword [esp], eax
call fcn.00421808
jmp 0x40c9f0
mov dword [esp + 4], 0x434618
mov dword [esp], 0
call fcn.004216c8
jmp 0x40d667
mov dword [esp + 8], edx
mov eax, dword [esp + 0x20]
mov edx, dword [esp + 0x24]
mov dword [esp + 0xc], ecx
mov dword [esp], eax
mov dword [esp + 4], edx
call fcn.0042fc70
jmp 0x40d2a0
mov dword [esp + 0x10], str.sc_cond_init
mov dword [esp + 0xc], 0x8b
mov dword [esp + 8], 0x432e4f
mov dword [esp + 4], 0x431262
mov dword [esp], 0
call fcn.00421700
jmp 0x40d5c8
mov dword [0x443598], 0xffffffff
mov dword [0x4435ac], 0xffffffff
mov dword [0x4435c0], 0xffffffff
mov dword [0x4435d4], 0xffffffff
mov dword [0x4435e8], 0xffffffff
mov dword [0x4435fc], 0xffffffff
mov dword [0x443610], 0xffffffff
mov dword [0x443624], 0xffffffff
mov dword [0x443638], 0x443420
mov dword [0x443594], 0x434d2c
mov dword [esp + 0x44], 0x443594
jmp 0x40d0ae
movzx eax, byte [ebp + 0x100]
mov byte [0x443588], 0
mov dword [0x44358c], 0x443420
mov byte [0x443590], al
mov dword [0x443584], 0x434d0c
mov dword [esp + 0x3c], 0x443584
jmp 0x40d0a4
lea eax, [esp + 0xd8]
mov dword [esp], eax
call dword [0x4c58b0]
sub esp, 4
mov ebx, dword [esp + 0xd8]
mov edi, dword [esp + 0xdc]
mov dword [0x443668], ebx
mov dword [0x44366c], edi
jmp 0x40d1fc
mov ecx, 2
mov edi, 0x34
lea edx, [esp + 0xd8]
mov eax, 0x443420
mov dword [0x44358c], 0x443420
mov dword [0x443584], 0x434d1c
mov byte [0x443588], 1
mov dword [esp + 0xd8], 0xc
mov word [esp + 0xe0], cx
mov dword [esp + 0xe4], 0
mov dword [esp + 0xec], 0x43a680
mov word [esp + 0xe8], di
call fcn.00409e70
test al, al
jne 0x40df67
xor edx, edx
mov dword [esp + 4], str.Could_not_push_UHID_CREATE_message__mouse_
mov dword [esp], edx
call fcn.00421700
jmp 0x40db77
mov edx, 0x443514
xor eax, eax
mov ecx, 0x19
mov dword [0x443510], 0x434d04
mov dword [esp + 0xd8], 0xc
mov edi, edx
lea edx, [esp + 0xd8]
rep stosd dword es:[edi], eax
xor eax, eax
mov dword [esp + 0xe4], 0
mov dword [esp + 0xec], 0x43a620
mov word [edi], ax
xor eax, eax
mov word [0x443580], ax
mov eax, 0x100
mov word [0x44350c], ax
mov eax, 1
mov word [esp + 0xe0], ax
mov eax, 0x3f
mov word [esp + 0xe8], ax
mov eax, 0x443420
mov dword [0x44357c], 0x443420
call fcn.00409e70
mov dword [esp + 0x48], 0x44350c
mov dword [esp + 0x20], 0x44350c
test al, al
jne 0x40d08f
xor ebp, ebp
mov dword [esp + 4], str.Could_not_send_UHID_CREATE_message__keyboard_
mov dword [esp], ebp
call fcn.00421700
jmp 0x40db77
call fcn.00421778
mov dword [esp + 4], str.Could_not_create_window:__s
mov dword [esp + 8], eax
mov dword [esp], 0
call fcn.00421700
mov eax, dword [0x443200]
mov dword [esp], eax
call fcn.00421810
mov eax, dword [0x4431fc]
mov dword [esp], eax
call fcn.00421808
jmp 0x40d4fb
xor eax, eax
mov dword [esp + 0x10], str.sc_thread_create
mov dword [esp], eax
mov dword [esp + 0xc], 0x14
mov dword [esp + 8], 0x432e4f
mov dword [esp + 4], 0x431262
call fcn.00421700
xor eax, eax
mov dword [esp + 4], str.Could_not_start_receiver_thread
mov dword [esp], eax
call fcn.00421700
mov eax, dword [0x443428]
mov dword [esp], eax
call fcn.00421710
mov eax, dword [0x44342c]
mov byte [0x443430], 1
mov dword [esp], eax
call fcn.00421868
mov eax, dword [0x443428]
mov dword [esp], eax
call fcn.004215e0
xor eax, eax
mov dword [esp + 4], eax
mov eax, dword [0x443424]
mov dword [esp], eax
call fcn.004215c8
jmp 0x40db77
mov dword [esp], str.glGetString
call fcn.004217c0
mov dword [esp], str.glTexParameterf
mov dword [0x443168], eax
call fcn.004217c0
mov dword [esp], str.glTexParameteri
mov dword [0x44316c], eax
call fcn.004217c0
mov dword [esp], str.glGenerateMipmap
mov dword [0x443170], eax
call fcn.004217c0
mov dword [esp], 0x1f02
mov dword [0x443174], eax
call dword [0x443168]
mov dword [esp + 8], 0xa
mov dword [esp + 4], str.OpenGL_ES
mov dword [esp], eax
mov dword [0x443158], eax
mov dword [esp + 0x60], eax
call fcn.0042fae8
mov edx, dword [esp + 0x60]
test eax, eax
sete byte [0x44315c]
jne 0x40e225
add edx, 0xa
mov dword [esp + 0xc], 0x443164
mov dword [esp + 8], 0x443160
mov dword [esp + 4], 0x43446e
mov dword [esp], edx
call fcn.0041c500
cmp eax, 2
je 0x40e256
xor eax, eax
mov dword [0x443160], eax
mov dword [0x443164], eax
mov eax, dword [0x443158]
xor ecx, ecx
mov dword [esp + 4], str.OpenGL_version:__s
mov dword [esp], ecx
mov dword [esp + 8], eax
call fcn.004216f0
cmp dword [esp + 0x54], 0
je 0x40e527
cmp byte [0x44315c], 0
mov eax, dword [0x443160]
jne 0x40e5ad
cmp eax, 3
jle 0x40e5b6
xor edx, edx
mov dword [esp + 4], str.Trilinear_filtering_enabled
mov dword [esp], edx
call fcn.004216f0
mov byte [0x443178], 1
jmp 0x40c443
xor eax, eax
mov dword [esp + 0x10], str.sc_thread_create
mov dword [esp], eax
mov dword [esp + 0xc], 0x14
mov dword [esp + 8], 0x432e4f
mov dword [esp + 4], 0x431262
call fcn.00421700
xor eax, eax
mov dword [esp + 4], str.Timeout:_could_not_start_thread
mov dword [esp], eax
call fcn.00421700
mov byte [esp + 0x44], 1
movzx eax, byte [esp + 0x30]
jmp 0x40d539
xor eax, eax
mov dword [esp + 4], str.Trilinear_filtering_disabled__not_an_OpenGL_renderer_
mov dword [esp], eax
call fcn.00421708
jmp 0x40c443
call fcn.00421700
jmp 0x40e100
xor ebp, ebp
mov dword [esp + 0x10], str.sc_cond_init
mov dword [esp + 0xc], 0x8b
mov dword [esp + 8], 0x432e4f
mov dword [esp + 4], 0x431262
mov dword [esp], ebp
call fcn.00421700
mov eax, dword [0x44344c]
mov dword [esp], eax
call fcn.00421808
mov eax, dword [0x443428]
jmp 0x40dd43
movzx eax, byte [esp + 0x73]
mov dword [esp + 8], 2
mov dword [esp + 4], 0xffffffff
mov dword [esp + 0x54], eax
mov eax, dword [0x443224]
mov dword [esp], eax
call fcn.00421838
mov dword [0x443150], eax
test eax, eax
jne 0x40dac4
call fcn.00421778
xor ecx, ecx
mov dword [esp + 4], str.Could_not_create_renderer:__s
mov dword [esp + 8], eax
mov dword [esp], ecx
call fcn.00421700
mov eax, dword [edi + 0x18]
mov dword [esp + 0xd8], eax
lea eax, [esp + 0xd8]
mov dword [esp], eax
call fcn.004203a0
mov dword [esp], edi
call fcn.004217d8
mov eax, dword [0x443224]
mov dword [esp], eax
call fcn.004217f0
jmp 0x40e100
call fcn.00421778
mov dword [esp + 4], str.Could_not_set_renderer_logical_size:__s
mov dword [esp + 8], eax
xor eax, eax
mov dword [esp], eax
call fcn.004216c8
jmp 0x40c494
xor ebx, ebx
mov dword [esp + 4], str.Failed_to_initialize_USB
mov dword [esp], ebx
call fcn.00421700
mov eax, 0x4434f0
call fcn.00414d60
jmp 0x40dcf6
mov dword [esp + 4], 0x443148
mov dword [esp], 0x414010
call fcn.00421880
cmp byte [0x44314c], 0
mov dword [0x443148], 0x434d50
jne 0x40c651
jmp 0x40c62e
xor edx, edx
mov dword [esp + 0x10], str.sc_screen_init
mov dword [esp + 0xc], 0x1d6
mov dword [esp + 8], 0x43457d
mov dword [esp + 4], 0x431262
mov dword [esp], edx
call fcn.00421700
cmp dword [0x443184], 0
je 0x40e493
mov dword [esp], 0x443184
call fcn.004203a0
mov eax, dword [0x443154]
test eax, eax
je 0x40e4a4
mov dword [esp], eax
call fcn.004217f8
mov eax, dword [0x443150]
mov dword [esp], eax
call fcn.00421800
jmp 0x40e3d1
call fcn.00421778
xor ecx, ecx
mov dword [esp + 4], str.Could_not_create_texture:__s
mov dword [esp + 8], eax
mov dword [esp], ecx
call fcn.00421700
mov eax, dword [0x443150]
mov dword [esp], eax
call fcn.00421800
test edi, edi
jne 0x40e3b0
jmp 0x40e3d1
xor edi, edi
mov dword [esp + 0x10], str.sc_cond_init
mov dword [esp + 0xc], 0x8b
mov dword [esp + 8], 0x432e4f
mov dword [esp + 4], 0x431262
mov dword [esp], edi
call fcn.00421700
mov eax, dword [0x4434f0]
mov dword [esp], eax
call fcn.00421808
jmp 0x40dcf6
xor eax, eax
mov dword [esp + 4], str.Trilinear_filtering_disabled
mov dword [esp], eax
call fcn.004216f0
jmp 0x40c443
call fcn.00421778
xor ebx, ebx
mov dword [esp + 4], str.Could_not_create_renderer:__s
mov dword [esp + 8], eax
mov dword [esp], ebx
call fcn.00421700
jmp 0x40e3d1
mov eax, dword [0x4434a0]
mov dword [esp], eax
call fcn.00421900
push ecx
jmp 0x40dcf6
xor eax, eax
mov dword [esp + 0x10], str.sc_file_pusher_init
mov dword [esp], eax
mov dword [esp + 0xc], 0x2c
mov dword [esp + 8], 0x434107
mov dword [esp + 4], 0x431262
call fcn.00421700
mov eax, dword [0x443490]
mov dword [esp], eax
call fcn.00421808
jmp 0x40de45
cmp eax, 2
jg 0x40e297
je 0x40e813
xor eax, eax
mov dword [esp + 4], str.Trilinear_filtering_disabled__OpenGL_3.0_or_ES_2.0_required_
mov dword [esp], eax
call fcn.004216c8
jmp 0x40c443
mov dword [esp], eax
xor ebp, ebp
mov dword [esp + 0x28], edx
call fcn.00421890
push ebx
mov dword [esp + 8], eax
mov dword [esp + 4], str.Open_USB_device:_libusb_error:__s
mov dword [esp], ebp
call fcn.00421700
mov edx, dword [esp + 0x28]
test edx, edx
je 0x40e607
mov dword [esp], edx
call fcn.00421888
push edx
mov dword [esp], edi
call fcn.0042fa48
mov eax, dword [esp + 0x4c]
mov dword [esp], eax
call fcn.0042fa48
mov eax, dword [esp + 0x3c]
mov dword [esp], eax
call fcn.0042fa48
mov eax, dword [esp + 0x20]
mov dword [esp + 4], str.Failed_to_connect_to_USB_device__s
mov dword [esp + 8], eax
xor eax, eax
mov dword [esp], eax
call fcn.00421700
mov eax, dword [0x4434a0]
mov dword [esp], eax
call fcn.00421900
push eax
mov eax, 0x4434f0
call fcn.00414d60
jmp 0x40dcf6
mov dword [0x443638], 0x4434c4
mov dword [0x443598], 0xffffffff
mov dword [0x4435ac], 0xffffffff
mov dword [0x4435c0], 0xffffffff
mov dword [0x4435d4], 0xffffffff
mov dword [0x4435e8], 0xffffffff
mov dword [0x4435fc], 0xffffffff
mov dword [0x443610], 0xffffffff
mov dword [0x443624], 0xffffffff
mov dword [0x443594], 0x43a6c4
mov dword [esp + 0x44], 0x443594
jmp 0x40d818
xor eax, eax
mov ecx, 1
lea edx, [esp + 0x80]
mov dword [0x44358c], 0x4434c4
mov dword [esp + 0x84], eax
mov eax, 0x4434c4
mov word [esp + 0x80], 2
mov dword [esp + 0x88], 0x43a680
mov dword [esp + 0x8c], 0x34
call fcn.0041fa20
test al, al
je 0x40e825
mov dword [0x443584], 0x43a6b4
mov byte [0x443588], 1
mov dword [esp + 0x3c], 0x443584
jmp 0x40d807
xor edi, edi
mov ecx, 1
mov eax, 0x4434c4
mov dword [0x44357c], 0x4434c4
lea edx, [esp + 0x80]
mov word [esp + 0x80], 1
mov dword [esp + 0x84], edi
mov dword [esp + 0x88], 0x43a620
mov dword [esp + 0x8c], 0x3f
call fcn.0041fa20
test al, al
je 0x40e89b
mov edx, 0x443514
mov ecx, 0x66
xor eax, eax
mov byte [0x443580], 0
mov edi, edx
mov dword [esp + 0x20], 0x44350c
rep stosb byte es:[edi], al
mov word [0x44350c], 0x101
mov dword [0x443510], 0x43a660
jmp 0x40d7f6
xor eax, eax
mov dword [esp + 4], str.Failed_to_enable_HID_over_AOA
mov dword [esp], eax
call fcn.00421700
mov eax, dword [0x4434a4]
mov dword [esp], eax
call fcn.00421910
push eax
jmp 0x40e641
call fcn.00421778
mov dword [esp + 8], 0x431d7f
mov dword [esp + 0xc], eax
xor eax, eax
mov dword [esp + 4], 0x434594
mov dword [esp], eax
call fcn.00421700
jmp 0x40c651
cmp dword [0x443164], 0
jns 0x40e297
jmp 0x40e5bc
xor eax, eax
mov dword [esp + 4], str.Could_not_push_AOA_HID_open__mouse_
mov dword [esp], eax
call fcn.004216c8
xor eax, eax
mov dword [esp + 4], str.Could_not_initialized_HID_mouse
mov dword [esp], eax
call fcn.00421700
mov eax, 0x4434f0
call fcn.00414d60
mov eax, dword [0x4434a4]
mov dword [esp], eax
call fcn.00421910
mov eax, dword [0x4434a0]
push edx
mov dword [esp], eax
call fcn.00421900
mov eax, dword [0x4434e4]
push ecx
mov dword [esp], eax
call fcn.0042fa48
mov eax, dword [0x4434d0]
mov dword [esp], eax
call fcn.00421810
mov eax, dword [0x4434cc]
mov dword [esp], eax
call fcn.00421808
jmp 0x40dcf6
xor edx, edx
mov dword [esp + 4], str.Could_not_push_AOA_HID_open__keyboard_
mov dword [esp], edx
call fcn.004216c8
xor ecx, ecx
mov dword [esp + 4], str.Could_not_initialize_HID_keyboard
mov dword [esp], ecx
call fcn.00421700
jmp 0x40e849
xor ebx, ebx
mov dword [esp + 0x10], str.sc_thread_create
xor edi, edi
mov dword [esp + 0xc], 0x14
mov dword [esp + 8], 0x432e4f
mov dword [esp + 4], 0x431262
mov dword [esp], ebx
call fcn.00421700
mov dword [esp + 4], str.Could_not_start_AOA_thread
mov dword [esp], edi
call fcn.00421700
jmp 0x40e849
movzx eax, byte [esp + 0x40]
mov esi, 1
mov byte [esp + 0x28], al
jmp 0x40cb4e