Function at 0x4054be
Capabilities:
Parse pe header

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x38
mov dword [ebp - 4], 0
call fcn.0040aad1
mov dword [ebp - 4], eax
call fcn.0040274d
mov dword [ebp - 8], eax
push 0x505abe
push dword [ebp - 8]
call fcn.0040100c
add esp, 8
cmp eax, 0
mov eax, 0
sete al
mov dword [ebp - 0xc], eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40550c
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 0xc], 0
je 0x405a2b
push 0x1388
push 0xfa0
call fcn.0040ab15
call fcn.0040ab36
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x35
push 0x38
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x405555
push ebx
call fcn.0046021c
add esp, 4
call fcn.0040f863
cmp dword [ebp - 4], 0
je 0x40557f
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x40557f
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x36
push 0x20
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x4055af
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x4055d4
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x4055d4
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x46
push 0x1c
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x405604
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x405629
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x405629
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x54
push 0x26
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x405659
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x40567e
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x40567e
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x54
push 0x3f
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x4056ae
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x4056d3
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x4056d3
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x54
push 0x58
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x405703
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x405728
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x405728
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x52
push 0x64
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x405758
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x40577d
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x40577d
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x46
push 0x6a
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x4057ad
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x4057d2
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x4057d2
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x33
push 0x69
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x405802
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x405827
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x405827
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x33
push 0x63
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x405857
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x40587c
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x40587c
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x36
push 0x4a
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x4058ac
push ebx
call fcn.0046021c
add esp, 4
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x45
push 0x37
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x4058dc
push ebx
call fcn.0046021c
add esp, 4
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x59
push 0x50
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x405907
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x40592c
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x40592c
call fcn.00411487
cmp dword [ebp - 4], 0
je 0x405956
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x405956
call fcn.0041167a
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x45
push 0x37
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x405986
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x4059ab
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x4059ab
mov eax, 0x505ac7
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
call fcn.004117d9
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x4059cc
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x4059f1
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x4059f1
mov eax, 0x505acd
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
call fcn.004117d9
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x405a12
push ebx
call fcn.0046021c
add esp, 4
push 0x1770
push 0x1388
call fcn.0040ab15
call fcn.00411ec4
jmp 0x4054d6
call fcn.0040274d
mov dword [ebp - 8], eax
push 0x505ad2
push dword [ebp - 8]
call fcn.0040100c
add esp, 8
cmp eax, 0
mov eax, 0
sete al
mov dword [ebp - 0xc], eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x405a61
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 0xc], 0
je 0x405ff2
push 0x1388
push 0xfa0
call fcn.0040ab15
call fcn.0040ab36
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x72
push 0x3f
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x405aaa
push ebx
call fcn.0046021c
add esp, 4
call fcn.0040f863
cmp dword [ebp - 4], 0
je 0x405ad4
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x405ad4
call fcn.00411f5f
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x6a
push 0x1b
call fcn.0040ef50
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x405b04
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x405b29
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x405b29
call fcn.00411f5f
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x5c
push 0x35
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x405b59
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x405b7e
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x405b7e
call fcn.00411f5f
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x6b
push 0x3f
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x405bae
push ebx
call fcn.0046021c
add esp, 4
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x58
push 0x4d
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x405bd9
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x405bfe
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x405bfe
call fcn.00411f5f
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x56
push 0x6b
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x405c2e
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x405c53
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x405c53
call fcn.00411f5f
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x3d
push 0x6a
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x405c83
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x405ca8
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x405ca8
call fcn.00411f5f
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x45
push 0x44
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x405cd8
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x405cfd
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x405cfd
call fcn.00411f5f
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x4d
push 0x33
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x405d2d
push ebx
call fcn.0046021c
add esp, 4
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x49
push 0x17
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x405d58
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x405d7d
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x405d7d
call fcn.00411f5f
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x33
push 0x29
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x405dad
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x405dd2
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x405dd2
call fcn.00411f5f
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x28
push 0x65
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x405e02
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x405e27
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x405e27
call fcn.00411f5f
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x16
push 0x62
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x405e57
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x405e7c
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x405e7c
call fcn.00411f5f
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x1f
push 0x39
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x405eac
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x405ed1
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x405ed1
call fcn.00411f5f
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x23
push 0x23
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x405f01
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x405f26
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x405f26
call fcn.00411f5f
call fcn.00403642
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x59
push 0x3d
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x405f5b
push ebx
call fcn.0046021c
add esp, 4
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x22
push 0x27
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x405f86
push ebx
call fcn.0046021c
add esp, 4
call fcn.0040f863
cmp dword [ebp - 4], 0
je 0x405fb0
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x405fb0
mov eax, 0x505ad7
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
call fcn.004117d9
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x405fd1
push ebx
call fcn.0046021c
add esp, 4
push 0xfa0
push 0xbb8
push 0xbe83e0
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0x240]
jmp 0x405a2b
call fcn.0040274d
mov dword [ebp - 8], eax
push 0x505ade
push dword [ebp - 8]
call fcn.0040100c
add esp, 8
cmp eax, 0
mov eax, 0
sete al
mov dword [ebp - 0xc], eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x406028
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 0xc], 0
je 0x4061a7
push 0x1388
push 0xfa0
call fcn.0040ab15
call fcn.0040ab36
call fcn.00402250
test eax, eax
je 0x406118
call fcn.00403642
call fcn.0041259b
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x3c
push 0x3d
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x406088
push ebx
call fcn.0046021c
add esp, 4
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x1d
push 0xf
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x4060b3
push ebx
call fcn.0046021c
add esp, 4
call fcn.0040f863
mov eax, 0x505ae7
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
call fcn.00412796
mov dword [ebp - 0xc], eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x4060dc
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 0xc], 0
je 0x4060f0
call fcn.00413d70
jmp 0x4060f2
jmp 0x4060b8
mov eax, 0x505ae7
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
call fcn.00413db0
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x406113
push ebx
call fcn.0046021c
add esp, 4
jmp 0x40618e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x1d
push 0xf
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x406143
push ebx
call fcn.0046021c
add esp, 4
call fcn.0040f863
cmp dword [ebp - 4], 0
je 0x40616d
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x40616d
mov eax, 0x505ae7
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
call fcn.00413db0
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40618e
push ebx
call fcn.0046021c
add esp, 4
push 0x1770
push 0x1388
call fcn.0040ab15
call fcn.004143ec
jmp 0x405ff2
call fcn.0040274d
mov dword [ebp - 8], eax
push 0x505af0
push dword [ebp - 8]
call fcn.0040100c
add esp, 8
cmp eax, 0
mov eax, 0
sete al
mov dword [ebp - 0xc], eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x4061dd
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 0xc], 0
je 0x406665
push 0x1388
push 0xfa0
call fcn.0040ab15
push 0xffffffffffffffff
push 0xa
push 0x160141da
push 0x52010001
call fcn.00460246
add esp, 0x10
mov dword [ebp - 8], eax
push 0x505af9
push dword [ebp - 8]
call fcn.0040100c
add esp, 8
cmp eax, 0
mov eax, 0
sete al
mov dword [ebp - 0xc], eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40623d
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 0xc], 0
je 0x406345
push 0x65
mov eax, str.dx.public.active.api
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
mov eax, str.dx.keypad.input.lock.apidx.keypad.state.apidx.keypad.api
mov dword [ebp - 0xc], eax
lea eax, [ebp - 0xc]
push eax
mov eax, str.dx.mouse.position.lock.apidx.mouse.clip.lock.apidx.mouse.state.apidx.mouse.api
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
push eax
mov eax, 0x505ba4
mov dword [ebp - 0x14], eax
lea eax, [ebp - 0x14]
push eax
push dword [0xbe83d8]
push 0xbe83e0
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0x648]
mov dword [ebp - 0x18], eax
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x4062a7
push ebx
call fcn.0046021c
add esp, 4
mov ebx, dword [ebp - 0x10]
test ebx, ebx
je 0x4062b7
push ebx
call fcn.0046021c
add esp, 4
mov ebx, dword [ebp - 0xc]
test ebx, ebx
je 0x4062c7
push ebx
call fcn.0046021c
add esp, 4
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x4062d7
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 0x18], 1
jne 0x406331
push 0x7d0
push 0x3e8
call fcn.0040ab15
push 0x80000301
push 0
push dword [0xbe83f8]
push 1
mov eax, 2
mov ebx, 0x4c7c80
call fcn.00460234
add esp, 0x10
push 0
push 0x505ba8
push 0xffffffffffffffff
push 0xa
push 0x160141da
push 0x52010001
call fcn.00460240
add esp, 0x18
push 0x7d0
push 0x3e8
call fcn.0040ab15
jmp 0x4061f6
call fcn.0040ab36
call fcn.00414487
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x55
push 0x5e
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40637a
push ebx
call fcn.0046021c
add esp, 4
call fcn.0040f863
cmp dword [ebp - 4], 0
je 0x4063a4
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x4063a4
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x3a
push 0x66
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x4063d4
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x4063f9
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x4063f9
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x23
push 0x69
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x406429
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x40644e
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x40644e
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x16
push 0x61
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40647e
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x4064a3
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x4064a3
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x16
push 0x46
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x4064d3
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x4064f8
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x4064f8
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x19
push 0x2e
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x406528
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x40654d
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x40654d
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x19
push 0x1d
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40657d
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x4065a2
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x4065a2
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x48
push 0x29
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x4065d2
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x4065f7
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x4065f7
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x5f
push 0x17
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x406627
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x40664c
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x40664c
call fcn.0040ff8e
push 0x9c40
push 0x88b8
call fcn.0040ab15
jmp 0x4061a7
call fcn.0040274d
mov dword [ebp - 8], eax
push 0x505bad
push dword [ebp - 8]
call fcn.0040100c
add esp, 8
cmp eax, 0
mov eax, 0
sete al
mov dword [ebp - 0xc], eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40669b
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 0xc], 0
je 0x406b94
push 0x1388
push 0xfa0
call fcn.0040ab15
call fcn.0040ab36
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0xc5
push 0x87
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x4066e4
push ebx
call fcn.0046021c
add esp, 4
call fcn.0040f863
cmp dword [ebp - 4], 0
je 0x40670e
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x40670e
call fcn.004144ab
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0xb4
push 0x86
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40673e
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x406763
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x406763
call fcn.004144ab
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0xb9
push 0x9d
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x406793
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x4067b8
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x4067b8
call fcn.004144ab
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x4d
push 0x60
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x4067e8
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x40680d
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x40680d
call fcn.004144ab
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x4c
push 0x40
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40683d
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x406862
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x406862
call fcn.004144ab
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x38
push 0x41
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x406892
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x4068b7
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x4068b7
call fcn.004144ab
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x37
push 0x50
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x4068e7
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x40690c
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x40690c
call fcn.004144ab
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x27
push 0x40
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40693c
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x406961
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x406961
call fcn.004144ab
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x2d
push 0xa8
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x406991
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x4069b6
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x4069b6
call fcn.004144ab
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x3f
push 0xa1
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x4069e6
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x406a0b
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x406a0b
call fcn.004144ab
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x51
push 0xb0
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x406a3b
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x406a60
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x406a60
call fcn.004144ab
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x40
push 0xba
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x406a90
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x406ab5
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x406ab5
call fcn.004144ab
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x46
push 0xc8
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x406ae5
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x406b0a
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x406b0a
call fcn.004144ab
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x32
push 0xc6
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x406b3a
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x406b5f
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x406b5f
mov eax, 0x505bb4
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
call fcn.004117d9
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x406b80
push ebx
call fcn.0046021c
add esp, 4
push 0xc350
push 0x9c40
call fcn.0040ab15
jmp 0x406665
call fcn.0040274d
mov dword [ebp - 8], eax
push 0x505bb9
push dword [ebp - 8]
call fcn.0040100c
add esp, 8
cmp eax, 0
mov eax, 0
sete al
mov dword [ebp - 0xc], eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x406bca
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 0xc], 0
je 0x4071f6
push 0x1388
push 0xfa0
call fcn.0040ab15
call fcn.0040ab36
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0xa6
push 0xb8
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x406c13
push ebx
call fcn.0046021c
add esp, 4
call fcn.0040f863
cmp dword [ebp - 4], 0
je 0x406c3d
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x406c3d
call fcn.004144ab
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0xc3
push 0x85
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x406c6d
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x406c92
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x406c92
call fcn.004144ab
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x88
push 0x49
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x406cc2
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x406ce7
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x406ce7
call fcn.004144ab
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x47
push 0x53
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x406d17
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x406d3c
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x406d3c
call fcn.004144ab
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x3c
push 0xb6
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x406d6c
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x406d91
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x406d91
call fcn.004144ab
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x4a
push 0xb5
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x406dc1
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x406de6
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x406de6
call fcn.004144ab
push 0xffffffffffffffff
push 8
push 0x1601be3b
push 0x52010001
call fcn.00460246
add esp, 0x10
mov dword [ebp - 8], eax
push VariantClear
push 0
mov eax, dword [ebp - 8]
test eax, eax
jne 0x406e17
mov eax, 0x5057d0
push eax
push 1
mov ebx, 0x460e00
call fcn.0046022e
add esp, 0x10
mov dword [ebp - 0xc], eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x406e3d
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 0xc], 0
jne 0x406e72
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x73
push 0x7b
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x406e72
push ebx
call fcn.0046021c
add esp, 4
push 0xffffffffffffffff
push 8
push 0x1601be3b
push 0x52010001
call fcn.00460246
add esp, 0x10
mov dword [ebp - 8], eax
push VariantClear
push 0
mov eax, dword [ebp - 8]
test eax, eax
jne 0x406e9e
mov eax, 0x5057d0
push eax
push 1
mov ebx, 0x460e00
call fcn.0046022e
add esp, 0x10
mov dword [ebp - 0xc], eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x406ec4
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 0xc], 1
jne 0x406ef9
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x71
push 0x7d
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x406ef9
push ebx
call fcn.0046021c
add esp, 4
push 0xffffffffffffffff
push 8
push 0x1601be3b
push 0x52010001
call fcn.00460246
add esp, 0x10
mov dword [ebp - 8], eax
push VariantClear
push 0
mov eax, dword [ebp - 8]
test eax, eax
jne 0x406f25
mov eax, 0x5057d0
push eax
push 1
mov ebx, 0x460e00
call fcn.0046022e
add esp, 0x10
mov dword [ebp - 0xc], eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x406f4b
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 0xc], 2
jne 0x406f80
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x6d
push 0x7c
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x406f80
push ebx
call fcn.0046021c
add esp, 4
push 0xffffffffffffffff
push 8
push 0x1601be3b
push 0x52010001
call fcn.00460246
add esp, 0x10
mov dword [ebp - 8], eax
push VariantClear
push 0
mov eax, dword [ebp - 8]
test eax, eax
jne 0x406fac
mov eax, 0x5057d0
push eax
push 1
mov ebx, 0x460e00
call fcn.0046022e
add esp, 0x10
mov dword [ebp - 0xc], eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x406fd2
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 0xc], 3
jne 0x407007
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x70
push 0x76
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x407007
push ebx
call fcn.0046021c
add esp, 4
push 0xffffffffffffffff
push 8
push 0x1601be3b
push 0x52010001
call fcn.00460246
add esp, 0x10
mov dword [ebp - 8], eax
push VariantClear
push 0
mov eax, dword [ebp - 8]
test eax, eax
jne 0x407033
mov eax, 0x5057d0
push eax
push 1
mov ebx, 0x460e00
call fcn.0046022e
add esp, 0x10
mov dword [ebp - 0xc], eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x407059
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 0xc], 4
jne 0x40708e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x71
push 0x82
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40708e
push ebx
call fcn.0046021c
add esp, 4
push 0xffffffffffffffff
push 8
push 0x1601be3b
push 0x52010001
call fcn.00460246
add esp, 0x10
mov dword [ebp - 8], eax
push VariantClear
push 0
mov eax, dword [ebp - 8]
test eax, eax
jne 0x4070ba
mov eax, 0x5057d0
push eax
push 1
mov ebx, 0x460e00
call fcn.0046022e
add esp, 0x10
mov dword [ebp - 0xc], eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x4070e0
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 0xc], 5
jne 0x407115
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x75
push 0x78
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x407115
push ebx
call fcn.0046021c
add esp, 4
push 0xffffffffffffffff
push 8
push 0x1601be3b
push 0x52010001
call fcn.00460246
add esp, 0x10
mov dword [ebp - 8], eax
push VariantClear
push 0
mov eax, dword [ebp - 8]
test eax, eax
jne 0x407141
mov eax, 0x5057d0
push eax
push 1
mov ebx, 0x460e00
call fcn.0046022e
add esp, 0x10
mov dword [ebp - 0xc], eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x407167
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 0xc], 6
jne 0x40719c
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x75
push 0x7e
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40719c
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x4071c1
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x4071c1
mov eax, 0x505bc2
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
call fcn.004117d9
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x4071e2
push ebx
call fcn.0046021c
add esp, 4
push 0x9c40
push 0x88b8
call fcn.0040ab15
jmp 0x406b94
call fcn.0040274d
mov dword [ebp - 8], eax
push 0x505bcb
push dword [ebp - 8]
call fcn.0040100c
add esp, 8
cmp eax, 0
mov eax, 0
sete al
mov dword [ebp - 0xc], eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40722c
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 0xc], 0
je 0x4073b5
push 0x1388
push 0xfa0
call fcn.0040ab15
call fcn.0040ab36
call fcn.00402250
test eax, eax
je 0x40731c
call fcn.00403642
call fcn.0041259b
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x2e
push 0x41
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40728c
push ebx
call fcn.0046021c
add esp, 4
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0xd7
push 0xe3
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x4072b7
push ebx
call fcn.0046021c
add esp, 4
call fcn.0040f863
mov eax, 0x505bd4
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
call fcn.00412796
mov dword [ebp - 0xc], eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x4072e0
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 0xc], 0
je 0x4072f4
call fcn.00413d70
jmp 0x4072f6
jmp 0x4072bc
mov eax, 0x505bd4
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
call fcn.00413db0
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x407317
push ebx
call fcn.0046021c
add esp, 4
jmp 0x407392
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0xd7
push 0xe3
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x407347
push ebx
call fcn.0046021c
add esp, 4
call fcn.0040f863
cmp dword [ebp - 4], 0
je 0x407371
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x407371
mov eax, 0x505bd4
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
call fcn.00413db0
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x407392
push ebx
call fcn.0046021c
add esp, 4
push 0x80000301
push 0
push 0xafc8
push 1
mov ebx, 0x462e90
call fcn.0046022e
add esp, 0x10
jmp 0x4071f6
call fcn.004027c6
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0x10c
jne 0x407710
push 0xfa0
push 0xbb8
call fcn.0040ab15
call fcn.0040ab36
call fcn.00403642
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x92
push 0x9e
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40740e
push ebx
call fcn.0046021c
add esp, 4
call fcn.0040f863
call fcn.00403518
mov dword [ebp - 8], eax
mov ebx, dword [ebp - 8]
mov dword [ebp - 0xc], ebx
mov ebx, dword [ebp - 0xc]
cmp dword [ebx], 0xa2
mov eax, 0
setl al
mov dword [ebp - 0x10], eax
mov ebx, dword [ebp - 8]
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 0x10], 0
je 0x407500
call fcn.00403518
mov dword [ebp - 0x14], eax
mov ebx, dword [ebp - 0x14]
mov dword [ebp - 0x18], ebx
mov ebx, dword [ebp - 0x18]
cmp dword [ebx], 0x9a
mov eax, 0
setg al
mov dword [ebp - 0x1c], eax
mov ebx, dword [ebp - 0x14]
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 0x1c], 0
je 0x407500
call fcn.00403518
mov dword [ebp - 0x20], eax
mov ebx, dword [ebp - 0x20]
add ebx, 4
mov dword [ebp - 0x24], ebx
mov ebx, dword [ebp - 0x24]
cmp dword [ebx], 0x96
mov eax, 0
setl al
mov dword [ebp - 0x28], eax
mov ebx, dword [ebp - 0x20]
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 0x28], 0
je 0x407500
call fcn.00403518
mov dword [ebp - 0x2c], eax
mov ebx, dword [ebp - 0x2c]
add ebx, 4
mov dword [ebp - 0x30], ebx
mov ebx, dword [ebp - 0x30]
cmp dword [ebx], 0x8e
mov eax, 0
setg al
mov dword [ebp - 0x34], eax
mov ebx, dword [ebp - 0x2c]
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 0x34], 0
je 0x407500
mov eax, 1
jmp 0x407505
mov eax, 0
test eax, eax
je 0x40752b
call fcn.00411328
call fcn.00410573
call fcn.00410b1b
call fcn.00410889
call fcn.00410781
jmp 0x407556
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x92
push 0x9e
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x407556
push ebx
call fcn.0046021c
add esp, 4
mov dword [ebp - 8], 0
push 0
lea eax, [ebp - 8]
push eax
mov dword [ebp - 0xc], 0
push 0
lea eax, [ebp - 0xc]
push eax
push 1
push 0x3f800000
mov eax, str.ffc0cb
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
push eax
mov eax, 0x505be4
mov dword [ebp - 0x14], eax
lea eax, [ebp - 0x14]
push eax
push 0x32
push 0x1e0
push 0
push 0xf0
call fcn.0040eebe
mov dword [ebp - 0x18], eax
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x4075bb
push ebx
call fcn.0046021c
add esp, 4
mov ebx, dword [ebp - 0x10]
test ebx, ebx
je 0x4075cb
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 0x18], 0
je 0x40768a
push 0x1f
push 0x116
push 0xbe83e0
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0x57c]
mov dword [ebp - 0x1c], eax
push str.1b1b1b
push dword [ebp - 0x1c]
call fcn.0040100c
add esp, 8
cmp eax, 0
mov eax, 0
sete al
mov dword [ebp - 0x20], eax
mov ebx, dword [ebp - 0x1c]
test ebx, ebx
je 0x407622
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 0x20], 0
je 0x40768a
push 0xb
push 0x117
push 0xbe83e0
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0x57c]
mov dword [ebp - 0x24], eax
push str.8c0100
push dword [ebp - 0x24]
call fcn.0040100c
add esp, 8
cmp eax, 0
mov eax, 0
sete al
mov dword [ebp - 0x28], eax
mov ebx, dword [ebp - 0x24]
test ebx, ebx
je 0x407679
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 0x28], 0
je 0x40768a
mov eax, 1
jmp 0x40768f
mov eax, 0
test eax, eax
je 0x40769c
jmp 0x4076a1
jmp 0x407413
call fcn.0040ab36
call fcn.004027c6
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0x10c
jne 0x4076fc
call fcn.00403642
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x44
push 0x46
call fcn.00414e41
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x4076eb
push ebx
call fcn.0046021c
add esp, 4
push 0x7d0
push 0x3e8
call fcn.0040ab15
jmp 0x4076a6
push 0x7d0
push 0x3e8
call fcn.0040ab15
jmp 0x4073b5
call fcn.0040274d
mov dword [ebp - 8], eax
push 0x5057e4
push dword [ebp - 8]
call fcn.0040100c
add esp, 8
cmp eax, 0
mov eax, 0
sete al
mov dword [ebp - 0xc], eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x407746
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 0xc], 0
je 0x4077c4
push 0x1388
push 0xfa0
call fcn.0040ab15
call fcn.0040f863
call fcn.0040274d
mov dword [ebp - 8], eax
push 0x5057e4
push dword [ebp - 8]
call fcn.0040100c
add esp, 8
cmp eax, 0
mov eax, 0
sete al
mov dword [ebp - 0xc], eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40779a
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 0xc], 0
je 0x4077bf
call fcn.00411328
call fcn.00410573
call fcn.00410781
call fcn.00410b1b
call fcn.00410889
jmp 0x407764
jmp 0x407710
call fcn.004027c6
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0xb3
jne 0x407d0f
push 0x1388
push 0xfa0
call fcn.0040ab15
push 0xffffffffffffffff
push 0xa
push 0x160141db
push 0x52010001
call fcn.00460246
add esp, 0x10
mov dword [ebp - 8], eax
push 0x505bfd
push dword [ebp - 8]
call fcn.0040100c
add esp, 8
cmp eax, 0
mov eax, 0
sete al
mov dword [ebp - 0xc], eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40782f
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 0xc], 0
je 0x40793c
push 0x65
mov eax, str.dx.public.active.api
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
mov eax, str.dx.keypad.input.lock.apidx.keypad.state.apidx.keypad.api
mov dword [ebp - 0xc], eax
lea eax, [ebp - 0xc]
push eax
mov eax, str.dx.mouse.position.lock.apidx.mouse.clip.lock.apidx.mouse.state.apidx.mouse.api
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
push eax
mov eax, 0x505ba4
mov dword [ebp - 0x14], eax
lea eax, [ebp - 0x14]
push eax
push dword [0xbe83d8]
push 0xbe83e0
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0x648]
mov dword [ebp - 0x18], eax
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x407899
push ebx
call fcn.0046021c
add esp, 4
mov ebx, dword [ebp - 0x10]
test ebx, ebx
je 0x4078a9
push ebx
call fcn.0046021c
add esp, 4
mov ebx, dword [ebp - 0xc]
test ebx, ebx
je 0x4078b9
push ebx
call fcn.0046021c
add esp, 4
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x4078c9
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 0x18], 1
jne 0x407928
push 0x7d0
push 0x3e8
call fcn.0040ab15
push 0x80000301
push 0
push dword [0xbe83fc]
push 1
mov eax, 2
mov ebx, 0x4c7c80
call fcn.00460234
add esp, 0x10
push 0
push 0x505c09
push 0xffffffffffffffff
push 0xa
push 0x160141db
push 0x52010001
call fcn.00460240
add esp, 0x18
jmp 0x40793c
push 0x7d0
push 0x3e8
call fcn.0040ab15
jmp 0x4077e8
call fcn.00414487
call fcn.0040f863
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x7f
push 0x5c
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x407971
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x407996
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x407996
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x7f
push 0x5c
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x4079c6
push ebx
call fcn.0046021c
add esp, 4
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x6b
push 0x5d
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x4079f1
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x407a16
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x407a16
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x58
push 0x52
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x407a46
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x407a6b
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x407a6b
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x66
push 0x45
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x407a9b
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x407ac0
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x407ac0
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x6a
push 0x27
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x407af0
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x407b15
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x407b15
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x5c
push 0x35
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x407b45
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x407b6a
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x407b6a
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x3f
push 0x2d
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x407b9a
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x407bbf
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x407bbf
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x36
push 0x3a
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x407bef
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x407c14
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x407c14
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x50
push 0x4c
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x407c44
push ebx
call fcn.0046021c
add esp, 4
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x41
push 0x59
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x407c6f
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x407c94
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x407c94
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x27
push 0x5f
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x407cc4
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x407ce9
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x407ce9
call fcn.0040ff8e
push 0xc350
push 0xafc8
push 0xbe83e0
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0x240]
jmp 0x4077c4
call fcn.004027c6
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0xb2
jne 0x40822a
push 0x1388
push 0xfa0
call fcn.0040ab15
push 0xffffffffffffffff
push 0xa
push 0x160141db
push 0x52010001
call fcn.00460246
add esp, 0x10
mov dword [ebp - 8], eax
push 0x505bfd
push dword [ebp - 8]
call fcn.0040100c
add esp, 8
cmp eax, 0
mov eax, 0
sete al
mov dword [ebp - 0xc], eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x407d7a
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 0xc], 0
je 0x407e82
push 0x65
mov eax, str.dx.public.active.api
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
mov eax, str.dx.keypad.input.lock.apidx.keypad.state.apidx.keypad.api
mov dword [ebp - 0xc], eax
lea eax, [ebp - 0xc]
push eax
mov eax, str.dx.mouse.position.lock.apidx.mouse.clip.lock.apidx.mouse.state.apidx.mouse.api
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
push eax
mov eax, 0x505ba4
mov dword [ebp - 0x14], eax
lea eax, [ebp - 0x14]
push eax
push dword [0xbe83d8]
push 0xbe83e0
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0x648]
mov dword [ebp - 0x18], eax
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x407de4
push ebx
call fcn.0046021c
add esp, 4
mov ebx, dword [ebp - 0x10]
test ebx, ebx
je 0x407df4
push ebx
call fcn.0046021c
add esp, 4
mov ebx, dword [ebp - 0xc]
test ebx, ebx
je 0x407e04
push ebx
call fcn.0046021c
add esp, 4
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x407e14
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 0x18], 1
jne 0x407e6e
push 0x7d0
push 0x3e8
call fcn.0040ab15
push 0x80000301
push 0
push dword [0xbe83fc]
push 1
mov eax, 2
mov ebx, 0x4c7c80
call fcn.00460234
add esp, 0x10
push 0
push 0x505c09
push 0xffffffffffffffff
push 0xa
push 0x160141db
push 0x52010001
call fcn.00460240
add esp, 0x18
push 0x7d0
push 0x3e8
call fcn.0040ab15
jmp 0x407d33
call fcn.00414487
call fcn.0040f863
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x97
push 0x30
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x407eb7
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x407edc
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x407edc
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x8f
push 0x43
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x407f0c
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x407f31
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x407f31
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x93
push 0x6d
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x407f61
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x407f86
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x407f86
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x86
push 0x7a
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x407fb6
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x407fdb
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x407fdb
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x78
push 0x8e
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40800b
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x408030
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x408030
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x5f
push 0x7f
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x408060
push ebx
call fcn.0046021c
add esp, 4
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x53
push 0x75
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40808b
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x4080b0
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x4080b0
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x39
push 0x9a
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x4080e0
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x408105
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x408105
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x37
push 0x47
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x408135
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x40815a
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x40815a
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x42
push 0x33
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40818a
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x4081af
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x4081af
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x57
push 0x78
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x4081df
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x408204
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x408204
call fcn.0040ff8e
push 0xc350
push 0xafc8
push 0xbe83e0
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0x240]
jmp 0x407d0f
call fcn.004027c6
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0xb0
jne 0x40869c
push 0x1388
push 0xfa0
call fcn.0040ab15
push 0xffffffffffffffff
push 0xa
push 0x160141db
push 0x52010001
call fcn.00460246
add esp, 0x10
mov dword [ebp - 8], eax
push 0x505bfd
push dword [ebp - 8]
call fcn.0040100c
add esp, 8
cmp eax, 0
mov eax, 0
sete al
mov dword [ebp - 0xc], eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x408295
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 0xc], 0
je 0x40839d
push 0x65
mov eax, str.dx.public.active.api
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
mov eax, str.dx.keypad.input.lock.apidx.keypad.state.apidx.keypad.api
mov dword [ebp - 0xc], eax
lea eax, [ebp - 0xc]
push eax
mov eax, str.dx.mouse.position.lock.apidx.mouse.clip.lock.apidx.mouse.state.apidx.mouse.api
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
push eax
mov eax, 0x505ba4
mov dword [ebp - 0x14], eax
lea eax, [ebp - 0x14]
push eax
push dword [0xbe83d8]
push 0xbe83e0
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0x648]
mov dword [ebp - 0x18], eax
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x4082ff
push ebx
call fcn.0046021c
add esp, 4
mov ebx, dword [ebp - 0x10]
test ebx, ebx
je 0x40830f
push ebx
call fcn.0046021c
add esp, 4
mov ebx, dword [ebp - 0xc]
test ebx, ebx
je 0x40831f
push ebx
call fcn.0046021c
add esp, 4
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40832f
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 0x18], 1
jne 0x408389
push 0x7d0
push 0x3e8
call fcn.0040ab15
push 0x80000301
push 0
push dword [0xbe83fc]
push 1
mov eax, 2
mov ebx, 0x4c7c80
call fcn.00460234
add esp, 0x10
push 0
push 0x505c09
push 0xffffffffffffffff
push 0xa
push 0x160141db
push 0x52010001
call fcn.00460240
add esp, 0x18
push 0x7d0
push 0x3e8
call fcn.0040ab15
jmp 0x40824e
call fcn.00414487
call fcn.0040f863
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0xa7
push 0x5b
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x4083d2
push ebx
call fcn.0046021c
add esp, 4
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0xa7
push 0x68
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x4083fd
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x408422
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x408422
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x8a
push 0x50
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x408452
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x408477
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x408477
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x6f
push 0x5f
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x4084a7
push ebx
call fcn.0046021c
add esp, 4
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x70
push 0x49
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x4084d2
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x4084f7
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x4084f7
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x59
push 0x4d
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x408527
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x40854c
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x40854c
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x6b
push 0x41
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40857c
push ebx
call fcn.0046021c
add esp, 4
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x5f
push 0x31
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x4085a7
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x4085cc
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x4085cc
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x3a
push 0x2e
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x4085fc
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x408621
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x408621
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x36
push 0x57
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x408651
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x408676
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x408676
call fcn.0040ff8e
push 0xc350
push 0xafc8
push 0xbe83e0
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0x240]
jmp 0x40822a
call fcn.004027c6
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0xb4
jne 0x408b62
push 0x1388
push 0xfa0
call fcn.0040ab15
push 0xffffffffffffffff
push 0xa
push 0x160141db
push 0x52010001
call fcn.00460246
add esp, 0x10
mov dword [ebp - 8], eax
push 0x505bfd
push dword [ebp - 8]
call fcn.0040100c
add esp, 8
cmp eax, 0
mov eax, 0
sete al
mov dword [ebp - 0xc], eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x408707
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 0xc], 0
je 0x40880f
push 0x65
mov eax, str.dx.public.active.api
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
mov eax, str.dx.keypad.input.lock.apidx.keypad.state.apidx.keypad.api
mov dword [ebp - 0xc], eax
lea eax, [ebp - 0xc]
push eax
mov eax, str.dx.mouse.position.lock.apidx.mouse.clip.lock.apidx.mouse.state.apidx.mouse.api
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
push eax
mov eax, 0x505ba4
mov dword [ebp - 0x14], eax
lea eax, [ebp - 0x14]
push eax
push dword [0xbe83d8]
push 0xbe83e0
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0x648]
mov dword [ebp - 0x18], eax
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x408771
push ebx
call fcn.0046021c
add esp, 4
mov ebx, dword [ebp - 0x10]
test ebx, ebx
je 0x408781
push ebx
call fcn.0046021c
add esp, 4
mov ebx, dword [ebp - 0xc]
test ebx, ebx
je 0x408791
push ebx
call fcn.0046021c
add esp, 4
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x4087a1
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 0x18], 1
jne 0x4087fb
push 0x7d0
push 0x3e8
call fcn.0040ab15
push 0x80000301
push 0
push dword [0xbe83fc]
push 1
mov eax, 2
mov ebx, 0x4c7c80
call fcn.00460234
add esp, 0x10
push 0
push 0x505c09
push 0xffffffffffffffff
push 0xa
push 0x160141db
push 0x52010001
call fcn.00460240
add esp, 0x18
push 0x7d0
push 0x3e8
call fcn.0040ab15
jmp 0x4086c0
call fcn.00414487
call fcn.0040f863
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x36
push 0x5f
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x408844
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x408869
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x408869
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x38
push 0x48
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x408899
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x4088be
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x4088be
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x3f
push 0x44
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x4088ee
push ebx
call fcn.0046021c
add esp, 4
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x48
push 0x46
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x408919
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x40893e
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x40893e
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x4c
push 0x60
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40896e
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x408993
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x408993
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x62
push 0x5f
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x4089c3
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x4089e8
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x4089e8
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x6e
push 0x5f
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x408a18
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x408a3d
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x408a3d
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x83
push 0x66
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x408a6d
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x408a92
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x408a92
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x87
push 0x59
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x408ac2
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x408ae7
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x408ae7
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x33
push 0x5f
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x408b17
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x408b3c
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x408b3c
call fcn.0040ff8e
push 0xc350
push 0xafc8
push 0xbe83e0
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0x240]
jmp 0x40869c
call fcn.004027c6
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0xb1
jne 0x4090fe
push 0x1388
push 0xfa0
call fcn.0040ab15
push 0xffffffffffffffff
push 0xa
push 0x160141db
push 0x52010001
call fcn.00460246
add esp, 0x10
mov dword [ebp - 8], eax
push 0x505bfd
push dword [ebp - 8]
call fcn.0040100c
add esp, 8
cmp eax, 0
mov eax, 0
sete al
mov dword [ebp - 0xc], eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x408bcd
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 0xc], 0
je 0x408cd5
push 0x65
mov eax, str.dx.public.active.api
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
mov eax, str.dx.keypad.input.lock.apidx.keypad.state.apidx.keypad.api
mov dword [ebp - 0xc], eax
lea eax, [ebp - 0xc]
push eax
mov eax, str.dx.mouse.position.lock.apidx.mouse.clip.lock.apidx.mouse.state.apidx.mouse.api
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
push eax
mov eax, 0x505ba4
mov dword [ebp - 0x14], eax
lea eax, [ebp - 0x14]
push eax
push dword [0xbe83d8]
push 0xbe83e0
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0x648]
mov dword [ebp - 0x18], eax
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x408c37
push ebx
call fcn.0046021c
add esp, 4
mov ebx, dword [ebp - 0x10]
test ebx, ebx
je 0x408c47
push ebx
call fcn.0046021c
add esp, 4
mov ebx, dword [ebp - 0xc]
test ebx, ebx
je 0x408c57
push ebx
call fcn.0046021c
add esp, 4
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x408c67
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 0x18], 1
jne 0x408cc1
push 0x7d0
push 0x3e8
call fcn.0040ab15
push 0x80000301
push 0
push dword [0xbe83fc]
push 1
mov eax, 2
mov ebx, 0x4c7c80
call fcn.00460234
add esp, 0x10
push 0
push 0x505c09
push 0xffffffffffffffff
push 0xa
push 0x160141db
push 0x52010001
call fcn.00460240
add esp, 0x18
push 0x7d0
push 0x3e8
call fcn.0040ab15
jmp 0x408b86
call fcn.00414487
call fcn.0040f863
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x72
push 0x5f
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x408d0a
push ebx
call fcn.0046021c
add esp, 4
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x69
push 0x51
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x408d35
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x408d5a
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x408d5a
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x69
push 0x6a
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x408d8a
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x408daf
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x408daf
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x58
push 0x5f
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x408ddf
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x408e04
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x408e04
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x47
push 0x6c
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x408e34
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x408e59
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x408e59
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x38
push 0x4f
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x408e89
push ebx
call fcn.0046021c
add esp, 4
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x3c
push 0x40
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x408eb4
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x408ed9
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x408ed9
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x3a
push 0x2a
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x408f09
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x408f2e
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x408f2e
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x23
push 0x4f
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x408f5e
push ebx
call fcn.0046021c
add esp, 4
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x26
push 0x5c
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x408f89
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x408fae
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x408fae
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x23
push 0x6d
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x408fde
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x409003
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x409003
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x29
push 0x9a
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x409033
push ebx
call fcn.0046021c
add esp, 4
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x37
push 0x8e
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40905e
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x409083
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x409083
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x25
push 0x63
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x4090b3
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x4090d8
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x4090d8
call fcn.0040ff8e
push 0xc350
push 0xafc8
push 0xbe83e0
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0x240]
jmp 0x408b62
call fcn.004027c6
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0xaf
jne 0x40956f
push 0x1388
push 0xfa0
call fcn.0040ab15
push 0xffffffffffffffff
push 0xa
push 0x160141db
push 0x52010001
call fcn.00460246
add esp, 0x10
mov dword [ebp - 8], eax
push 0x505bfd
push dword [ebp - 8]
call fcn.0040100c
add esp, 8
cmp eax, 0
mov eax, 0
sete al
mov dword [ebp - 0xc], eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x409169
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 0xc], 0
je 0x409271
push 0x65
mov eax, str.dx.public.active.api
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
mov eax, str.dx.keypad.input.lock.apidx.keypad.state.apidx.keypad.api
mov dword [ebp - 0xc], eax
lea eax, [ebp - 0xc]
push eax
mov eax, str.dx.mouse.position.lock.apidx.mouse.clip.lock.apidx.mouse.state.apidx.mouse.api
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
push eax
mov eax, 0x505ba4
mov dword [ebp - 0x14], eax
lea eax, [ebp - 0x14]
push eax
push dword [0xbe83d8]
push 0xbe83e0
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0x648]
mov dword [ebp - 0x18], eax
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x4091d3
push ebx
call fcn.0046021c
add esp, 4
mov ebx, dword [ebp - 0x10]
test ebx, ebx
je 0x4091e3
push ebx
call fcn.0046021c
add esp, 4
mov ebx, dword [ebp - 0xc]
test ebx, ebx
je 0x4091f3
push ebx
call fcn.0046021c
add esp, 4
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x409203
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 0x18], 1
jne 0x40925d
push 0x7d0
push 0x3e8
call fcn.0040ab15
push 0x80000301
push 0
push dword [0xbe83fc]
push 1
mov eax, 2
mov ebx, 0x4c7c80
call fcn.00460234
add esp, 0x10
push 0
push 0x505c09
push 0xffffffffffffffff
push 0xa
push 0x160141db
push 0x52010001
call fcn.00460240
add esp, 0x18
push 0x7d0
push 0x3e8
call fcn.0040ab15
jmp 0x409122
call fcn.00414487
call fcn.0040f863
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x90
push 0x62
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x4092a6
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x4092cb
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x4092cb
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x74
push 0x62
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x4092fb
push ebx
call fcn.0046021c
add esp, 4
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x67
push 0x68
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x409326
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x40934b
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x40934b
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x5e
push 0x5b
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40937b
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x4093a0
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x4093a0
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x48
push 0x57
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x4093d0
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x4093f5
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x4093f5
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x48
push 0x6c
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x409425
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x40944a
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x40944a
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x3b
push 0x6a
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40947a
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x40949f
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x40949f
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x38
push 0x61
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x4094cf
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x4094f4
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x4094f4
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x2e
push 0x60
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x409524
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x409549
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x409549
call fcn.0040ff8e
push 0xc350
push 0xafc8
push 0xbe83e0
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0x240]
jmp 0x4090fe
call fcn.004027c6
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0xae
jne 0x409a60
push 0x1388
push 0xfa0
call fcn.0040ab15
push 0xffffffffffffffff
push 0xa
push 0x160141db
push 0x52010001
call fcn.00460246
add esp, 0x10
mov dword [ebp - 8], eax
push 0x505bfd
push dword [ebp - 8]
call fcn.0040100c
add esp, 8
cmp eax, 0
mov eax, 0
sete al
mov dword [ebp - 0xc], eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x4095da
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 0xc], 0
je 0x4096e2
push 0x65
mov eax, str.dx.public.active.api
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
mov eax, str.dx.keypad.input.lock.apidx.keypad.state.apidx.keypad.api
mov dword [ebp - 0xc], eax
lea eax, [ebp - 0xc]
push eax
mov eax, str.dx.mouse.position.lock.apidx.mouse.clip.lock.apidx.mouse.state.apidx.mouse.api
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
push eax
mov eax, 0x505ba4
mov dword [ebp - 0x14], eax
lea eax, [ebp - 0x14]
push eax
push dword [0xbe83d8]
push 0xbe83e0
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0x648]
mov dword [ebp - 0x18], eax
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x409644
push ebx
call fcn.0046021c
add esp, 4
mov ebx, dword [ebp - 0x10]
test ebx, ebx
je 0x409654
push ebx
call fcn.0046021c
add esp, 4
mov ebx, dword [ebp - 0xc]
test ebx, ebx
je 0x409664
push ebx
call fcn.0046021c
add esp, 4
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x409674
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 0x18], 1
jne 0x4096ce
push 0x7d0
push 0x3e8
call fcn.0040ab15
push 0x80000301
push 0
push dword [0xbe83fc]
push 1
mov eax, 2
mov ebx, 0x4c7c80
call fcn.00460234
add esp, 0x10
push 0
push 0x505c09
push 0xffffffffffffffff
push 0xa
push 0x160141db
push 0x52010001
call fcn.00460240
add esp, 0x18
push 0x7d0
push 0x3e8
call fcn.0040ab15
jmp 0x409593
call fcn.00414487
call fcn.0040f863
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x6d
push 0x56
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x409717
push ebx
call fcn.0046021c
add esp, 4
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x71
push 0x49
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x409742
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x409767
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x409767
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x5c
push 0x4a
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x409797
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x4097bc
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x4097bc
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x5a
push 0x3a
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x4097ec
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x409811
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x409811
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x6d
push 0x38
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x409841
push ebx
call fcn.0046021c
add esp, 4
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x6b
push 0x2c
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40986c
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x409891
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x409891
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x51
push 0x2d
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x4098c1
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x4098e6
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x4098e6
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x3c
push 0x2d
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x409916
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x40993b
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x40993b
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x39
push 0x38
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40996b
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x409990
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x409990
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x42
push 0x4f
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x4099c0
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x4099e5
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x4099e5
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x43
push 0x45
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x409a15
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x409a3a
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x409a3a
call fcn.0040ff8e
push 0xc350
push 0xafc8
push 0xbe83e0
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0x240]
jmp 0x40956f
call fcn.004027c6
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0xad
jne 0x409e7c
push 0x1388
push 0xfa0
call fcn.0040ab15
push 0xffffffffffffffff
push 0xa
push 0x160141db
push 0x52010001
call fcn.00460246
add esp, 0x10
mov dword [ebp - 8], eax
push 0x505bfd
push dword [ebp - 8]
call fcn.0040100c
add esp, 8
cmp eax, 0
mov eax, 0
sete al
mov dword [ebp - 0xc], eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x409acb
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 0xc], 0
je 0x409bd3
push 0x65
mov eax, str.dx.public.active.api
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
mov eax, str.dx.keypad.input.lock.apidx.keypad.state.apidx.keypad.api
mov dword [ebp - 0xc], eax
lea eax, [ebp - 0xc]
push eax
mov eax, str.dx.mouse.position.lock.apidx.mouse.clip.lock.apidx.mouse.state.apidx.mouse.api
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
push eax
mov eax, 0x505ba4
mov dword [ebp - 0x14], eax
lea eax, [ebp - 0x14]
push eax
push dword [0xbe83d8]
push 0xbe83e0
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0x648]
mov dword [ebp - 0x18], eax
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x409b35
push ebx
call fcn.0046021c
add esp, 4
mov ebx, dword [ebp - 0x10]
test ebx, ebx
je 0x409b45
push ebx
call fcn.0046021c
add esp, 4
mov ebx, dword [ebp - 0xc]
test ebx, ebx
je 0x409b55
push ebx
call fcn.0046021c
add esp, 4
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x409b65
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 0x18], 1
jne 0x409bbf
push 0x7d0
push 0x3e8
call fcn.0040ab15
push 0x80000301
push 0
push dword [0xbe83fc]
push 1
mov eax, 2
mov ebx, 0x4c7c80
call fcn.00460234
add esp, 0x10
push 0
push 0x505c09
push 0xffffffffffffffff
push 0xa
push 0x160141db
push 0x52010001
call fcn.00460240
add esp, 0x18
push 0x7d0
push 0x3e8
call fcn.0040ab15
jmp 0x409a84
call fcn.00414487
call fcn.0040f863
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x82
push 0x60
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x409c08
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x409c2d
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x409c2d
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x62
push 0x6f
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x409c5d
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x409c82
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x409c82
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x62
push 0x52
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x409cb2
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x409cd7
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x409cd7
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x53
push 0x44
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x409d07
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x409d2c
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x409d2c
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x51
push 0x57
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x409d5c
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x409d81
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x409d81
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x49
push 0x61
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x409db1
push ebx
call fcn.0046021c
add esp, 4
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x52
push 0x70
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x409ddc
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x409e01
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x409e01
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x4d
push 0x60
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x409e31
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x409e56
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x409e56
call fcn.0040ff8e
push 0xc350
push 0xafc8
push 0xbe83e0
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0x240]
jmp 0x409a60
call fcn.004027c6
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0xb5
jne 0x40a512
push 0x1388
push 0xfa0
call fcn.0040ab15
push 0xffffffffffffffff
push 0xa
push 0x160141db
push 0x52010001
call fcn.00460246
add esp, 0x10
mov dword [ebp - 8], eax
push 0x505bfd
push dword [ebp - 8]
call fcn.0040100c
add esp, 8
cmp eax, 0
mov eax, 0
sete al
mov dword [ebp - 0xc], eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x409ee7
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 0xc], 0
je 0x409fef
push 0x65
mov eax, str.dx.public.active.api
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
mov eax, str.dx.keypad.input.lock.apidx.keypad.state.apidx.keypad.api
mov dword [ebp - 0xc], eax
lea eax, [ebp - 0xc]
push eax
mov eax, str.dx.mouse.position.lock.apidx.mouse.clip.lock.apidx.mouse.state.apidx.mouse.api
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
push eax
mov eax, 0x505ba4
mov dword [ebp - 0x14], eax
lea eax, [ebp - 0x14]
push eax
push dword [0xbe83d8]
push 0xbe83e0
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0x648]
mov dword [ebp - 0x18], eax
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x409f51
push ebx
call fcn.0046021c
add esp, 4
mov ebx, dword [ebp - 0x10]
test ebx, ebx
je 0x409f61
push ebx
call fcn.0046021c
add esp, 4
mov ebx, dword [ebp - 0xc]
test ebx, ebx
je 0x409f71
push ebx
call fcn.0046021c
add esp, 4
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x409f81
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 0x18], 1
jne 0x409fdb
push 0x7d0
push 0x3e8
call fcn.0040ab15
push 0x80000301
push 0
push dword [0xbe83fc]
push 1
mov eax, 2
mov ebx, 0x4c7c80
call fcn.00460234
add esp, 0x10
push 0
push 0x505c09
push 0xffffffffffffffff
push 0xa
push 0x160141db
push 0x52010001
call fcn.00460240
add esp, 0x18
push 0x7d0
push 0x3e8
call fcn.0040ab15
jmp 0x409ea0
call fcn.00414487
call fcn.0040f863
call fcn.004027c6
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0xb5
jne 0x40a063
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x78
push 0x51
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40a039
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x40a05e
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x40a05e
call fcn.0040ff8e
call fcn.004027c6
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0xb5
jne 0x40a0cd
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x78
push 0x69
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40a0a3
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x40a0c8
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x40a0c8
call fcn.0040ff8e
call fcn.004027c6
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0xb5
jne 0x40a137
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x62
push 0x6e
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40a10d
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x40a132
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x40a132
call fcn.0040ff8e
call fcn.004027c6
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0xb5
jne 0x40a1a1
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x63
push 0x4a
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40a177
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x40a19c
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x40a19c
call fcn.0040ff8e
call fcn.004027c6
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0xb5
jne 0x40a20b
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x4b
push 0x5d
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40a1e1
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x40a206
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x40a206
call fcn.0040ff8e
call fcn.004027c6
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0xb5
jne 0x40a275
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x3f
push 0x58
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40a24b
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x40a270
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x40a270
call fcn.0040ff8e
call fcn.004027c6
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0xb5
jne 0x40a2df
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x3e
push 0x66
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40a2b5
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x40a2da
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x40a2da
call fcn.0040ff8e
call fcn.004027c6
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0xb5
jne 0x40a349
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x30
push 0x5d
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40a31f
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x40a344
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x40a344
call fcn.0040ff8e
call fcn.004027c6
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0xb5
jne 0x40a3b3
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x2f
push 0x74
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40a389
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x40a3ae
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x40a3ae
call fcn.0040ff8e
call fcn.004027c6
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0xb5
jne 0x40a41d
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x24
push 0x3d
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40a3f3
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x40a418
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x40a418
call fcn.0040ff8e
call fcn.004027c6
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0xb5
jne 0x40a487
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x3a
push 0x43
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40a45d
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x40a482
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x40a482
call fcn.0040ff8e
call fcn.004027c6
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0xb5
jne 0x40a4f1
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x2a
push 0x5f
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40a4c7
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x40a4ec
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x40a4ec
call fcn.0040ff8e
push 0xc350
push 0xafc8
push 0xbe83e0
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0x240]
jmp 0x409e7c
call fcn.004027c6
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0x254
jne 0x40aaac
push 0x1388
push 0xfa0
call fcn.0040ab15
push 0xffffffffffffffff
push 0xa
push 0x160141db
push 0x52010001
call fcn.00460246
add esp, 0x10
mov dword [ebp - 8], eax
push 0x505bfd
push dword [ebp - 8]
call fcn.0040100c
add esp, 8
cmp eax, 0
mov eax, 0
sete al
mov dword [ebp - 0xc], eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40a57d
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 0xc], 0
je 0x40a685
push 0x65
mov eax, str.dx.public.active.api
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
mov eax, str.dx.keypad.input.lock.apidx.keypad.state.apidx.keypad.api
mov dword [ebp - 0xc], eax
lea eax, [ebp - 0xc]
push eax
mov eax, str.dx.mouse.position.lock.apidx.mouse.clip.lock.apidx.mouse.state.apidx.mouse.api
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
push eax
mov eax, 0x505ba4
mov dword [ebp - 0x14], eax
lea eax, [ebp - 0x14]
push eax
push dword [0xbe83d8]
push 0xbe83e0
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0x648]
mov dword [ebp - 0x18], eax
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x40a5e7
push ebx
call fcn.0046021c
add esp, 4
mov ebx, dword [ebp - 0x10]
test ebx, ebx
je 0x40a5f7
push ebx
call fcn.0046021c
add esp, 4
mov ebx, dword [ebp - 0xc]
test ebx, ebx
je 0x40a607
push ebx
call fcn.0046021c
add esp, 4
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40a617
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 0x18], 1
jne 0x40a671
push 0x7d0
push 0x3e8
call fcn.0040ab15
push 0x80000301
push 0
push dword [0xbe83fc]
push 1
mov eax, 2
mov ebx, 0x4c7c80
call fcn.00460234
add esp, 0x10
push 0
push 0x505c09
push 0xffffffffffffffff
push 0xa
push 0x160141db
push 0x52010001
call fcn.00460240
add esp, 0x18
push 0x7d0
push 0x3e8
call fcn.0040ab15
jmp 0x40a536
call fcn.00414487
call fcn.0040f863
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0xa4
push 0x85
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40a6ba
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x40a6df
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x40a6df
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0xb5
push 0x7a
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40a70f
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x40a734
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x40a734
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0xae
push 0x68
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40a764
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x40a789
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x40a789
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0xa1
push 0x53
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40a7b9
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x40a7de
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x40a7de
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x83
push 0x44
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40a80e
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x40a833
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x40a833
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x68
push 0x51
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40a863
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x40a888
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x40a888
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x67
push 0x6c
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40a8b8
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x40a8dd
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x40a8dd
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x6e
push 0x81
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40a90d
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x40a932
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x40a932
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x76
push 0x94
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40a962
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x40a987
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x40a987
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x88
push 0x92
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40a9b7
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x40a9dc
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x40a9dc
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x80
push 0x80
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40aa0c
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x40aa31
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x40aa31
call fcn.0040ff8e
mov eax, 0x5057d0
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
push 0x58
push 0x8c
call fcn.0040ac99
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40aa61
push ebx
call fcn.0046021c
add esp, 4
cmp dword [ebp - 4], 0
je 0x40aa86
call fcn.0040f8ec
push 0x320
push 0x1f4
call fcn.0040ab15
jmp 0x40aa86
call fcn.0040ff8e
push 0xc350
push 0xafc8
push 0xbe83e0
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0x240]
jmp 0x40a512
push 0xbb8
push 0x7d0
push 0xbe83e0
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0x240]
jmp 0x4054d6