Function at 0x4697e5
Capabilities:
Hide graphical window

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push ecx
cmp dword [ebp + 0x1c], 0
push ebx
push esi
push edi
mov esi, eax
jne 0x469be1
xor ebx, ebx
inc ebx
cmp dword [ebp + 0xc], 0x4e
jne 0x469832
mov eax, dword [ebp + 0x14]
cmp dword [eax + 4], 0x3e8
jne 0x469832
mov ecx, esi
mov dword [esi + 0x370], ebx
call fcn.004695cf
mov edi, dword [ebp + 0x18]
mov dword [edi], eax
cmp dword [esi + 0x370], 0
je 0x469835
mov eax, ebx
jmp 0x469be3
mov edi, dword [ebp + 0x18]
push 0
push edi
push dword [ebp + 0x14]
mov ecx, esi
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.00475114
test eax, eax
jne 0x46982b
mov ecx, dword [ebp + 0xc]
cmp ecx, 5
lea eax, [esi + 0x368]
jne 0x469892
mov edx, dword [ebp + 0x14]
movsx ecx, word [ebp + 0x14]
shr edx, 0x10
movsx edx, dx
push edx
push ecx
push dword [ebp + 0x10]
push eax
call fcn.004761fd
and dword [edi], 0
mov ecx, dword [ebp + 0xc]
cmp ecx, dword [0x4f743c]
jne 0x4698e2
push dword [ebp + 0x10]
mov eax, dword [ebp + 0x14]
mov ecx, esi
call fcn.00472407
jmp 0x4698db
cmp ecx, 2
jne 0x46989e
and dword [eax], 0
and dword [eax + 4], 0
cmp ecx, 0x110
jne 0x4698cb
push ecx
mov ecx, dword [ebp + 0x10]
mov eax, esp
mov dword [esi + 0x370], ebx
mov dword [eax], ecx
mov eax, esi
call fcn.0046f32f
mov dword [edi], eax
cmp dword [esi + 0x370], 0
je 0x469878
jmp 0x46982b
cmp ecx, 0x800
jne 0x46987b
mov eax, dword [ebp + 0x14]
call fcn.0046f83f
mov dword [edi], eax
jmp 0x46982b
cmp ecx, 0x404
jne 0x46990e
push dword [ebp + 0x10]
mov ecx, esi
mov dword [esi + 0x370], ebx
call fcn.0046d524
mov dword [edi], eax
cmp dword [esi + 0x370], 0
je 0x4699ac
jmp 0x46982b
cmp ecx, 0x405
jne 0x469951
mov dword [esi + 0x370], ebx
call fcn.0044317c
cmp byte [eax + 3], 0
jne 0x46994c
call fcn.0044317c
cmp byte [eax + 2], 0
jne 0x46994c
call fcn.0044317c
cmp byte [eax + 1], 0
jne 0x46994c
push 5
mov ebx, esi
call fcn.00472fa8
mov edi, dword [ebp + 0x18]
xor ebx, ebx
inc ebx
and dword [edi], 0
jmp 0x4698fc
cmp ecx, 0x406
jne 0x469968
mov eax, esi
mov dword [esi + 0x370], ebx
call fcn.0046d748
jmp 0x46994c
cmp ecx, 0x408
jne 0x469982
mov eax, esi
mov dword [esi + 0x370], ebx
call fcn.004704ca
jmp 0x4698fa
cmp ecx, 0x409
jne 0x469a03
mov edi, esi
mov dword [esi + 0x370], ebx
call fcn.0047058b
mov ecx, dword [ebp + 0x18]
mov dword [ecx], eax
cmp dword [esi + 0x370], 0
jne 0x46982b
mov edi, dword [ebp + 0x18]
mov eax, dword [ebp + 0xc]
cmp eax, dword [0x4f7440]
jne 0x4699d7
push dword [ebp + 0x10]
mov dword [esi + 0x370], ebx
call fcn.00471deb
mov dword [edi], eax
cmp dword [esi + 0x370], 0
jne 0x46982b
mov eax, dword [ebp + 0xc]
cmp eax, 0x420
jne 0x469bec
mov edi, esi
mov dword [esi + 0x370], ebx
call fcn.0046f4ce
test eax, eax
jne 0x469bcd
mov ecx, esi
call fcn.00473136
jmp 0x469bcf
cmp ecx, 0x40a
jne 0x469a1e
push dword [ebp + 0x10]
mov dword [esi + 0x370], ebx
call fcn.004714a9
jmp 0x4698fa
cmp ecx, 0x40b
jne 0x469a49
cmp byte [esi + 0x598], 0
mov dword [esi + 0x370], ebx
je 0x469a3f
call fcn.0046eefd
jmp 0x46994c
call fcn.0046efd2
jmp 0x46994c
cmp ecx, 0x411
jne 0x469a69
mov edi, esi
mov dword [esi + 0x370], ebx
call fcn.00471f29
mov eax, dword [ebp + 0x18]
and dword [eax], 0
jmp 0x46999c
cmp ecx, 0x40d
jne 0x469a82
push 0
mov edi, esi
mov dword [esi + 0x370], ebx
call fcn.00471837
jmp 0x469a5e
cmp ecx, 0x412
jne 0x469a9f
push dword [ebp + 0x10]
mov eax, esi
mov dword [esi + 0x370], ebx
call fcn.00471fca
jmp 0x4698fa
cmp ecx, 0x414
jne 0x469aef
cmp dword [esi + 0x3ed0], 0
mov dword [esi + 0x370], ebx
jne 0x46994c
mov dword [esi + 0x3ed0], ebx
call fcn.004725db
push dword [esi + 0x3b60]
call dword [0x496838]
test eax, eax
jne 0x469ae3
push dword [esi + 4]
lea eax, [esi + 0x3b5c]
call fcn.004741d3
and dword [esi + 0x3ed0], 0
jmp 0x46994c
cmp ecx, 0x413
jne 0x469b2d
push ebx
push dword [esi + 4]
mov dword [esi + 0x370], ebx
call dword [0x496870]
push ebx
mov edi, esi
call fcn.00471837
mov eax, dword [esi + 0x37c]
test eax, eax
je 0x469a5e
push 0
push dword [eax + 4]
call dword [0x496870]
jmp 0x469a5e
cmp ecx, 0x415
jne 0x469b66
mov dword [esi + 0x370], ebx
call fcn.0044317c
cmp byte [eax + 3], 0
jne 0x46994c
call fcn.0044317c
cmp byte [eax + 2], 0
jne 0x46994c
mov dword [esi + 0x3f68], ebx
push 2
jmp 0x46993f
cmp ecx, 0x416
jne 0x469b80
mov eax, esi
mov dword [esi + 0x370], ebx
call fcn.00472ef9
jmp 0x4698fa
cmp ecx, 0x41e
jne 0x469b9b
push dword [ebp + 0x10]
mov dword [esi + 0x370], ebx
call fcn.00471deb
jmp 0x4698fa
cmp ecx, 0x417
jne 0x4699ac
mov dword [esi + 0x370], ebx
mov dword [esi + 0x3f70], ebx
call fcn.004715b8
xor eax, eax
mov dword [esi + 0x3f70], eax
mov dword [edi], eax
cmp dword [esi + 0x370], eax
jmp 0x469903
xor eax, eax
mov ecx, dword [ebp + 0x18]
mov dword [ecx], eax
cmp dword [esi + 0x370], 0
jne 0x46982b
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x18
cmp eax, 0x428
jne 0x469c14
push dword [ebp + 0x10]
lea eax, [esi + 0x370]
mov dword [esp + 0x10], eax
mov dword [eax], ebx
mov eax, esi
call fcn.00472b94
mov dword [edi], eax
mov eax, dword [esp + 0xc]
cmp dword [eax], 0
jmp 0x469bdb
cmp eax, 0x422
jne 0x469c2e
lea eax, [esi + 0x370]
mov dword [esp + 0xc], eax
mov dword [eax], ebx
call fcn.004732da
jmp 0x469c09
cmp eax, 0x423
jne 0x469c50
push dword [ebp + 0x14]
lea eax, [esi + 0x370]
push dword [ebp + 0x10]
mov dword [esp + 0x14], eax
mov dword [eax], ebx
mov eax, esi
call fcn.00473293
jmp 0x469c09
cmp eax, 0x429
jne 0x469c95
mov dword [esi + 0x370], ebx
mov eax, dword [esi + 0x56c]
test eax, eax
je 0x469c6c
call fcn.0047c964
mov ecx, esi
call fcn.00473076
mov ebx, esi
call fcn.0046dd11
mov eax, dword [ebp + 0x18]
and dword [eax], 0
cmp dword [esi + 0x370], 0
je 0x469be1
xor eax, eax
inc eax
jmp 0x469be3
cmp eax, 0x42a
jne 0x469cb8
push dword [ebp + 0x10]
lea edi, [esi + 0x370]
mov dword [edi], ebx
mov ebx, esi
call fcn.0047361f
mov ecx, dword [ebp + 0x18]
mov dword [ecx], eax
cmp dword [edi], 0
jmp 0x469c87
cmp eax, 0x111
jne 0x469cdc
lea eax, [esi + 0x370]
mov dword [esp + 0xc], eax
mov dword [eax], ebx
movzx eax, word [ebp + 0x10]
call fcn.0046f6a4
and dword [edi], 0
jmp 0x469c0b
cmp eax, 0x113
jne 0x469cfb
push dword [ebp + 0x10]
lea eax, [esi + 0x370]
mov ecx, esi
mov dword [esp + 0x10], eax
mov dword [eax], ebx
call fcn.0046fae1
jmp 0x469cd4
cmp eax, 0x18
jne 0x469d2f
cmp dword [ebp + 0x10], 0
lea eax, [esi + 0x370]
mov dword [esp + 0xc], eax
mov dword [eax], ebx
je 0x469d27
push 0
push ebx
push 0x41e
push dword [esi + 4]
call dword [0x496864]
mov eax, dword [esp + 0xc]
and dword [edi], 0
jmp 0x469c0f
cmp eax, 0x112
jne 0x469d5c
mov eax, dword [ebp + 0x14]
movsx ecx, ax
shr eax, 0x10
movsx eax, ax
push eax
mov eax, dword [ebp + 0x10]
push ecx
mov ecx, esi
mov dword [esi + 0x370], ebx
call fcn.0047010e
and dword [edi], 0
jmp 0x469bd4
cmp eax, 0x464
jne 0x469d7f
lea edi, [esi + 0x370]
mov dword [edi], ebx
push 4
mov ebx, esi
call fcn.00472fa8
mov eax, dword [ebp + 0x18]
and dword [eax], 0
jmp 0x469cb3
cmp eax, 3
jne 0x469daa
mov eax, dword [ebp + 0x14]
movsx ecx, ax
shr eax, 0x10
movsx eax, ax
push eax
push ecx
mov edi, esi
mov dword [esi + 0x370], ebx
call fcn.00471e24
mov eax, dword [ebp + 0x18]
and dword [eax], 0
jmp 0x469bd4
cmp eax, 0x218
jne 0x469ddc
cmp dword [ebp + 0x10], 7
lea ecx, [esi + 0x370]
mov dword [esp + 0xc], ecx
mov dword [ecx], ebx
jne 0x469dd0
mov eax, esi
call fcn.004726e1
mov ecx, dword [esp + 0xc]
jmp 0x469dd2
mov eax, ebx
mov dword [edi], eax
cmp dword [ecx], 0
jmp 0x469bdb
cmp eax, 0x16
jne 0x469df2
lea edi, [esi + 0x370]
mov dword [edi], ebx
mov ebx, esi
call fcn.00472f3a
jmp 0x469d74
cmp eax, 0x11
jne 0x469e1c
lea edi, [esi + 0x370]
mov dword [edi], ebx
mov ebx, esi
call fcn.00472f3a
mov ecx, dword [ebp + 0x18]
xor eax, eax
inc eax
mov dword [ecx], eax
cmp dword [edi], 0
je 0x469be1
jmp 0x469be3
cmp eax, 0x4a
jne 0x469be1
lea eax, [esi + 0x370]
mov dword [eax], ebx
push ecx
mov ecx, dword [ebp + 0x10]
mov dword [esp + 0x10], eax
mov eax, esp
mov dword [eax], ecx
mov eax, dword [ebp + 0x14]
call fcn.00473459
jmp 0x469c09