Function at 0x50e5ec
Capabilities:
Check for time delay via gettickcount

Disassembly:
push ebp
mov ebp, esp
mov ecx, 0xe7
push 0
push 0
dec ecx
jne 0x50e5f4
push ecx
push ebx
push esi
push edi
mov dword [ebp - 4], edx
mov edi, eax
mov eax, dword [ebp - 4]
call fcn.004055e8
xor eax, eax
push ebp
push 0x517783
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 4]
cmp byte [eax], 0x2b
jne 0x50f955
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x50e632
sub ebx, 4
mov ebx, dword [ebx]
lea eax, [ebp - 0x18]
push eax
mov ecx, ebx
dec ecx
mov edx, 2
mov eax, dword [ebp - 4]
call fcn.00405660
push 0
lea eax, [ebp - 0x22c]
push eax
mov byte [ebp - 0x230], 0x2f
lea ecx, [ebp - 0x230]
lea edx, [ebp - 0x14]
mov eax, dword [ebp - 0x18]
call fcn.00488aec
mov edx, dword [ebp - 0x22c]
lea eax, [ebp - 0x18]
call fcn.004051f0
mov eax, dword [ebp - 0x14]
mov edx, 0x51779c
call fcn.00405590
jne 0x50e691
mov eax, dword [0x688b08]
mov byte [eax], 1
jmp case.0x50fad2.5079
mov eax, dword [ebp - 0x14]
mov edx, 0x5177a8
call fcn.00405590
jne 0x50e7c2
mov eax, dword [0x68896c]
mov byte [eax], 1
mov eax, dword [0x68875c]
cmp byte [eax + 0x11e8], 0
je 0x50e735
push 1
push 0
mov edx, 0x5177ac
lea eax, [ebp - 0x248]
call fcn.00403960
mov edx, dword [0x688f44]
add edx, 0x1112
lea eax, [ebp - 0x248]
mov cl, 0x13
call fcn.00403930
lea edx, [ebp - 0x248]
lea eax, [ebp - 0x260]
call fcn.00403960
mov edx, 0x5177b4
lea eax, [ebp - 0x260]
mov cl, 0x14
call fcn.00403930
lea edx, [ebp - 0x260]
lea eax, [ebp - 0x234]
call fcn.004053cc
mov edx, dword [ebp - 0x234]
mov ecx, 0xffffff
mov eax, dword [0x69458c]
call fcn.0053ca7c
jmp case.0x50fad2.5079
mov eax, dword [0x68875c]
cmp byte [eax + 0x12eea], 0
je case.0x50fad2.5079
push 1
push 0
mov edx, 0x5177ac
lea eax, [ebp - 0x248]
call fcn.00403960
mov edx, dword [0x688f44]
add edx, 0x120a6
lea eax, [ebp - 0x248]
mov cl, 0x13
call fcn.00403930
lea edx, [ebp - 0x248]
lea eax, [ebp - 0x260]
call fcn.00403960
mov edx, 0x5177b4
lea eax, [ebp - 0x260]
mov cl, 0x14
call fcn.00403930
lea edx, [ebp - 0x260]
lea eax, [ebp - 0x264]
call fcn.004053cc
mov edx, dword [ebp - 0x264]
mov ecx, 0xffffff
mov eax, dword [0x69458c]
call fcn.0053ca7c
jmp case.0x50fad2.5079
mov eax, dword [ebp - 0x14]
mov edx, 0x5177c0
call fcn.00405590
jne 0x50e8f3
mov eax, dword [0x68896c]
mov byte [eax], 0
mov eax, dword [0x68875c]
cmp byte [eax + 0x11e8], 0
je 0x50e866
push 1
push 0
mov edx, 0x5177c8
lea eax, [ebp - 0x248]
call fcn.00403960
mov edx, dword [0x688f44]
add edx, 0x1112
lea eax, [ebp - 0x248]
mov cl, 0x13
call fcn.00403930
lea edx, [ebp - 0x248]
lea eax, [ebp - 0x260]
call fcn.00403960
mov edx, 0x5177b4
lea eax, [ebp - 0x260]
mov cl, 0x14
call fcn.00403930
lea edx, [ebp - 0x260]
lea eax, [ebp - 0x268]
call fcn.004053cc
mov edx, dword [ebp - 0x268]
mov ecx, 0xffffff
mov eax, dword [0x69458c]
call fcn.0053ca7c
jmp case.0x50fad2.5079
mov eax, dword [0x68875c]
cmp byte [eax + 0x12eea], 0
je case.0x50fad2.5079
push 1
push 0
mov edx, 0x5177c8
lea eax, [ebp - 0x248]
call fcn.00403960
mov edx, dword [0x688f44]
add edx, 0x120a6
lea eax, [ebp - 0x248]
mov cl, 0x13
call fcn.00403930
lea edx, [ebp - 0x248]
lea eax, [ebp - 0x260]
call fcn.00403960
mov edx, 0x5177b4
lea eax, [ebp - 0x260]
mov cl, 0x14
call fcn.00403930
lea edx, [ebp - 0x260]
lea eax, [ebp - 0x26c]
call fcn.004053cc
mov edx, dword [ebp - 0x26c]
mov ecx, 0xffffff
mov eax, dword [0x69458c]
call fcn.0053ca7c
jmp case.0x50fad2.5079
mov eax, dword [ebp - 0x14]
mov edx, 0x5177d8
call fcn.00405590
jne 0x50ea24
mov eax, dword [0x688aa8]
mov byte [eax], 1
mov eax, dword [0x68875c]
cmp byte [eax + 0x254e], 0
je 0x50e997
push 1
push 0
mov edx, 0x5177ac
lea eax, [ebp - 0x248]
call fcn.00403960
mov edx, dword [0x688f44]
add edx, 0x238e
lea eax, [ebp - 0x248]
mov cl, 0x13
call fcn.00403930
lea edx, [ebp - 0x248]
lea eax, [ebp - 0x260]
call fcn.00403960
mov edx, 0x5177b4
lea eax, [ebp - 0x260]
mov cl, 0x14
call fcn.00403930
lea edx, [ebp - 0x260]
lea eax, [ebp - 0x270]
call fcn.004053cc
mov edx, dword [ebp - 0x270]
mov ecx, 0xffffff
mov eax, dword [0x69458c]
call fcn.0053ca7c
jmp case.0x50fad2.5079
mov eax, dword [0x68875c]
cmp byte [eax + 0x13068], 0
je case.0x50fad2.5079
push 1
push 0
mov edx, 0x5177ac
lea eax, [ebp - 0x248]
call fcn.00403960
mov edx, dword [0x688f44]
add edx, 0x12212
lea eax, [ebp - 0x248]
mov cl, 0x13
call fcn.00403930
lea edx, [ebp - 0x248]
lea eax, [ebp - 0x260]
call fcn.00403960
mov edx, 0x5177b4
lea eax, [ebp - 0x260]
mov cl, 0x14
call fcn.00403930
lea edx, [ebp - 0x260]
lea eax, [ebp - 0x274]
call fcn.004053cc
mov edx, dword [ebp - 0x274]
mov ecx, 0xffffff
mov eax, dword [0x69458c]
call fcn.0053ca7c
jmp case.0x50fad2.5079
mov eax, dword [ebp - 0x14]
mov edx, 0x5177e4
call fcn.00405590
jne 0x50eb55
mov eax, dword [0x688aa8]
mov byte [eax], 0
mov eax, dword [0x68875c]
cmp byte [eax + 0x254e], 0
je 0x50eac8
push 1
push 0
mov edx, 0x5177c8
lea eax, [ebp - 0x248]
call fcn.00403960
mov edx, dword [0x688f44]
add edx, 0x238e
lea eax, [ebp - 0x248]
mov cl, 0x13
call fcn.00403930
lea edx, [ebp - 0x248]
lea eax, [ebp - 0x260]
call fcn.00403960
mov edx, 0x5177b4
lea eax, [ebp - 0x260]
mov cl, 0x14
call fcn.00403930
lea edx, [ebp - 0x260]
lea eax, [ebp - 0x278]
call fcn.004053cc
mov edx, dword [ebp - 0x278]
mov ecx, 0xffffff
mov eax, dword [0x69458c]
call fcn.0053ca7c
jmp case.0x50fad2.5079
mov eax, dword [0x68875c]
cmp byte [eax + 0x13068], 0
je case.0x50fad2.5079
push 1
push 0
mov edx, 0x5177c8
lea eax, [ebp - 0x248]
call fcn.00403960
mov edx, dword [0x688f44]
add edx, 0x12212
lea eax, [ebp - 0x248]
mov cl, 0x13
call fcn.00403930
lea edx, [ebp - 0x248]
lea eax, [ebp - 0x260]
call fcn.00403960
mov edx, 0x5177b4
lea eax, [ebp - 0x260]
mov cl, 0x14
call fcn.00403930
lea edx, [ebp - 0x260]
lea eax, [ebp - 0x27c]
call fcn.004053cc
mov edx, dword [ebp - 0x27c]
mov ecx, 0xffffff
mov eax, dword [0x69458c]
call fcn.0053ca7c
jmp case.0x50fad2.5079
mov eax, dword [ebp - 0x14]
mov edx, 0x5177f4
call fcn.00405590
jne 0x50eb71
mov eax, dword [0x688ef4]
mov byte [eax], 1
jmp case.0x50fad2.5079
mov eax, dword [ebp - 0x14]
mov edx, 0x517800
call fcn.00405590
jne 0x50eb8d
mov eax, dword [0x688ef4]
mov byte [eax], 0
jmp case.0x50fad2.5079
mov eax, dword [ebp - 0x14]
mov edx, 0x517810
call fcn.00405590
jne 0x50eba9
mov eax, dword [0x688a24]
mov byte [eax], 1
jmp case.0x50fad2.5079
mov eax, dword [ebp - 0x14]
mov edx, 0x51781c
call fcn.00405590
jne 0x50ebc5
mov eax, dword [0x688a24]
mov byte [eax], 0
jmp case.0x50fad2.5079
mov eax, dword [ebp - 0x14]
mov edx, 0x51782c
call fcn.00405590
jne 0x50ebe1
mov eax, dword [0x68851c]
mov byte [eax], 1
jmp case.0x50fad2.5079
mov eax, dword [ebp - 0x14]
mov edx, 0x517838
call fcn.00405590
jne 0x50ebfd
mov eax, dword [0x68851c]
mov byte [eax], 0
jmp case.0x50fad2.5079
mov eax, dword [ebp - 0x14]
mov edx, 0x517848
call fcn.00405590
jne 0x50ec9f
mov eax, dword [0x688ca0]
mov byte [eax], 1
push 1
push 0
mov edx, 0x517850
lea eax, [ebp - 0x290]
call fcn.00403960
mov edx, dword [0x688f44]
add edx, 0x9c6a
lea eax, [ebp - 0x290]
mov cl, 0xf
call fcn.00403930
lea edx, [ebp - 0x290]
lea eax, [ebp - 0x2ac]
call fcn.00403960
mov edx, 0x517854
lea eax, [ebp - 0x2ac]
mov cl, 0x18
call fcn.00403930
lea edx, [ebp - 0x2ac]
lea eax, [ebp - 0x280]
call fcn.004053cc
mov edx, dword [ebp - 0x280]
mov ecx, 0xffffff
mov eax, dword [0x69458c]
call fcn.0053ca7c
mov eax, dword [0x68875c]
mov byte [eax + 0xa425], 1
jmp case.0x50fad2.5079
mov eax, dword [ebp - 0x14]
mov edx, 0x517868
call fcn.00405590
jne 0x50ed72
mov eax, dword [0x688ca0]
mov byte [eax], 0
push 1
push 0
mov edx, 0x517850
lea eax, [ebp - 0x290]
call fcn.00403960
mov edx, dword [0x688f44]
add edx, 0x9c6a
lea eax, [ebp - 0x290]
mov cl, 0xf
call fcn.00403930
lea edx, [ebp - 0x290]
lea eax, [ebp - 0x2c8]
call fcn.00403960
mov edx, 0x517870
lea eax, [ebp - 0x2c8]
mov cl, 0x16
call fcn.00403930
lea edx, [ebp - 0x2c8]
lea eax, [ebp - 0x2b0]
call fcn.004053cc
mov edx, dword [ebp - 0x2b0]
mov ecx, 0xff
mov eax, dword [0x69458c]
call fcn.0053ca7c
mov eax, dword [0x68875c]
mov byte [eax + 0xa425], 0
mov eax, dword [0x688724]
cmp dword [eax], 0x6e
jne case.0x50fad2.5079
mov eax, dword [0x688724]
mov dword [eax], 0xffffffff
push 1
push 0
mov ecx, 0xff00
mov edx, 0x517880
mov eax, dword [0x69458c]
call fcn.0053ca7c
jmp case.0x50fad2.5079
mov eax, dword [ebp - 0x14]
mov edx, 0x51789c
call fcn.00405590
jne 0x50ee14
mov eax, dword [0x688864]
mov byte [eax], 1
push 1
push 0
mov edx, 0x517850
lea eax, [ebp - 0x290]
call fcn.00403960
mov edx, dword [0x688f44]
add edx, 0x9f42
lea eax, [ebp - 0x290]
mov cl, 0xf
call fcn.00403930
lea edx, [ebp - 0x290]
lea eax, [ebp - 0x2ac]
call fcn.00403960
mov edx, 0x517854
lea eax, [ebp - 0x2ac]
mov cl, 0x18
call fcn.00403930
lea edx, [ebp - 0x2ac]
lea eax, [ebp - 0x2cc]
call fcn.004053cc
mov edx, dword [ebp - 0x2cc]
mov ecx, 0xffffff
mov eax, dword [0x69458c]
call fcn.0053ca7c
mov eax, dword [0x68875c]
mov byte [eax + 0xa721], 1
jmp case.0x50fad2.5079
mov eax, dword [ebp - 0x14]
mov edx, 0x5178ac
call fcn.00405590
jne 0x50eee7
mov eax, dword [0x688864]
mov byte [eax], 0
push 1
push 0
mov edx, 0x517850
lea eax, [ebp - 0x290]
call fcn.00403960
mov edx, dword [0x688f44]
add edx, 0x9f42
lea eax, [ebp - 0x290]
mov cl, 0xf
call fcn.00403930
lea edx, [ebp - 0x290]
lea eax, [ebp - 0x2c8]
call fcn.00403960
mov edx, 0x517870
lea eax, [ebp - 0x2c8]
mov cl, 0x16
call fcn.00403930
lea edx, [ebp - 0x2c8]
lea eax, [ebp - 0x2d0]
call fcn.004053cc
mov edx, dword [ebp - 0x2d0]
mov ecx, 0xff
mov eax, dword [0x69458c]
call fcn.0053ca7c
mov eax, dword [0x68875c]
mov byte [eax + 0xa721], 0
mov eax, dword [0x688724]
cmp dword [eax], 0x70
jne case.0x50fad2.5079
mov eax, dword [0x688724]
mov dword [eax], 0xffffffff
push 1
push 0
mov ecx, 0xff00
mov edx, 0x517880
mov eax, dword [0x69458c]
call fcn.0053ca7c
jmp case.0x50fad2.5079
mov eax, dword [ebp - 0x14]
mov edx, 0x5178bc
call fcn.00405590
jne 0x50efba
mov eax, dword [0x688354]
mov byte [eax], 1
push 1
push 0
mov edx, 0x517850
lea eax, [ebp - 0x290]
call fcn.00403960
mov edx, dword [0x688f44]
add edx, 0xa0ae
lea eax, [ebp - 0x290]
mov cl, 0xf
call fcn.00403930
lea edx, [ebp - 0x290]
lea eax, [ebp - 0x2ac]
call fcn.00403960
mov edx, 0x517854
lea eax, [ebp - 0x2ac]
mov cl, 0x18
call fcn.00403930
lea edx, [ebp - 0x2ac]
lea eax, [ebp - 0x2d4]
call fcn.004053cc
mov edx, dword [ebp - 0x2d4]
mov ecx, 0xffffff
mov eax, dword [0x69458c]
call fcn.0053ca7c
mov eax, dword [0x68875c]
mov byte [eax + 0xa89f], 1
mov eax, dword [0x688724]
cmp dword [eax], 0x71
jne case.0x50fad2.5079
mov eax, dword [0x688724]
mov dword [eax], 0xffffffff
push 1
push 0
mov ecx, 0xff00
mov edx, 0x517880
mov eax, dword [0x69458c]
call fcn.0053ca7c
jmp case.0x50fad2.5079
mov eax, dword [ebp - 0x14]
mov edx, 0x5178cc
call fcn.00405590
jne 0x50f05c
mov eax, dword [0x688354]
mov byte [eax], 0
push 1
push 0
mov edx, 0x517850
lea eax, [ebp - 0x290]
call fcn.00403960
mov edx, dword [0x688f44]
add edx, 0xa0ae
lea eax, [ebp - 0x290]
mov cl, 0xf
call fcn.00403930
lea edx, [ebp - 0x290]
lea eax, [ebp - 0x2c8]
call fcn.00403960
mov edx, 0x517870
lea eax, [ebp - 0x2c8]
mov cl, 0x16
call fcn.00403930
lea edx, [ebp - 0x2c8]
lea eax, [ebp - 0x2d8]
call fcn.004053cc
mov edx, dword [ebp - 0x2d8]
mov ecx, 0xff
mov eax, dword [0x69458c]
call fcn.0053ca7c
mov eax, dword [0x68875c]
mov byte [eax + 0xa89f], 0
jmp case.0x50fad2.5079
mov eax, dword [ebp - 0x14]
mov edx, 0x5178dc
call fcn.00405590
jne 0x50f0fe
mov eax, dword [0x6888f8]
mov byte [eax], 1
push 1
push 0
mov edx, 0x517850
lea eax, [ebp - 0x290]
call fcn.00403960
mov edx, dword [0x688f44]
add edx, 0xad7a
lea eax, [ebp - 0x290]
mov cl, 0xf
call fcn.00403930
lea edx, [ebp - 0x290]
lea eax, [ebp - 0x2ac]
call fcn.00403960
mov edx, 0x517854
lea eax, [ebp - 0x2ac]
mov cl, 0x18
call fcn.00403930
lea edx, [ebp - 0x2ac]
lea eax, [ebp - 0x2dc]
call fcn.004053cc
mov edx, dword [ebp - 0x2dc]
mov ecx, 0xffffff
mov eax, dword [0x69458c]
call fcn.0053ca7c
mov eax, dword [0x68875c]
mov byte [eax + 0xb60d], 1
jmp case.0x50fad2.5079
mov eax, dword [ebp - 0x14]
mov edx, 0x5178ec
call fcn.00405590
jne 0x50f1a0
mov eax, dword [0x6888f8]
mov byte [eax], 0
push 1
push 0
mov edx, 0x517850
lea eax, [ebp - 0x290]
call fcn.00403960
mov edx, dword [0x688f44]
add edx, 0xad7a
lea eax, [ebp - 0x290]
mov cl, 0xf
call fcn.00403930
lea edx, [ebp - 0x290]
lea eax, [ebp - 0x2c8]
call fcn.00403960
mov edx, 0x517870
lea eax, [ebp - 0x2c8]
mov cl, 0x16
call fcn.00403930
lea edx, [ebp - 0x2c8]
lea eax, [ebp - 0x2e0]
call fcn.004053cc
mov edx, dword [ebp - 0x2e0]
mov ecx, 0xff
mov eax, dword [0x69458c]
call fcn.0053ca7c
mov eax, dword [0x68875c]
mov byte [eax + 0xb60d], 0
jmp case.0x50fad2.5079
mov eax, dword [ebp - 0x14]
mov edx, 0x5178fc
call fcn.00405590
jne 0x50f2ed
mov eax, dword [0x688654]
mov byte [eax], 1
mov eax, dword [0x68875c]
cmp byte [eax + 0x5390], 0
je 0x50f254
push 1
push 0
mov edx, 0x517850
lea eax, [ebp - 0x290]
call fcn.00403960
mov edx, dword [0x688f44]
add edx, 0x4fa2
lea eax, [ebp - 0x290]
mov cl, 0xf
call fcn.00403930
lea edx, [ebp - 0x290]
lea eax, [ebp - 0x2ac]
call fcn.00403960
mov edx, 0x517854
lea eax, [ebp - 0x2ac]
mov cl, 0x18
call fcn.00403930
lea edx, [ebp - 0x2ac]
lea eax, [ebp - 0x2e4]
call fcn.004053cc
mov edx, dword [ebp - 0x2e4]
mov ecx, 0xffffff
mov eax, dword [0x69458c]
call fcn.0053ca7c
mov eax, dword [0x68875c]
mov byte [eax + 0x5391], 1
jmp case.0x50fad2.5079
mov eax, dword [0x68875c]
cmp byte [eax + 0x13364], 0
je case.0x50fad2.5079
push 1
push 0
mov edx, 0x517850
lea eax, [ebp - 0x290]
call fcn.00403960
mov edx, dword [0x688f44]
add edx, 0x124ea
lea eax, [ebp - 0x290]
mov cl, 0xf
call fcn.00403930
lea edx, [ebp - 0x290]
lea eax, [ebp - 0x2ac]
call fcn.00403960
mov edx, 0x517854
lea eax, [ebp - 0x2ac]
mov cl, 0x18
call fcn.00403930
lea edx, [ebp - 0x2ac]
lea eax, [ebp - 0x2e8]
call fcn.004053cc
mov edx, dword [ebp - 0x2e8]
mov ecx, 0xffffff
mov eax, dword [0x69458c]
call fcn.0053ca7c
mov eax, dword [0x68875c]
mov byte [eax + 0x13365], 1
jmp case.0x50fad2.5079
mov eax, dword [ebp - 0x14]
mov edx, 0x517908
call fcn.00405590
jne 0x50f43a
mov eax, dword [0x688654]
mov byte [eax], 0
mov eax, dword [0x68875c]
cmp byte [eax + 0x5390], 0
je 0x50f3a1
push 1
push 0
mov edx, 0x517850
lea eax, [ebp - 0x290]
call fcn.00403960
mov edx, dword [0x688f44]
add edx, 0x4fa2
lea eax, [ebp - 0x290]
mov cl, 0xf
call fcn.00403930
lea edx, [ebp - 0x290]
lea eax, [ebp - 0x2c8]
call fcn.00403960
mov edx, 0x517870
lea eax, [ebp - 0x2c8]
mov cl, 0x16
call fcn.00403930
lea edx, [ebp - 0x2c8]
lea eax, [ebp - 0x2ec]
call fcn.004053cc
mov edx, dword [ebp - 0x2ec]
mov ecx, 0xff
mov eax, dword [0x69458c]
call fcn.0053ca7c
mov eax, dword [0x68875c]
mov byte [eax + 0x5391], 0
jmp case.0x50fad2.5079
mov eax, dword [0x68875c]
cmp byte [eax + 0x13364], 0
je case.0x50fad2.5079
push 1
push 0
mov edx, 0x517850
lea eax, [ebp - 0x290]
call fcn.00403960
mov edx, dword [0x688f44]
add edx, 0x124ea
lea eax, [ebp - 0x290]
mov cl, 0xf
call fcn.00403930
lea edx, [ebp - 0x290]
lea eax, [ebp - 0x2c8]
call fcn.00403960
mov edx, 0x517870
lea eax, [ebp - 0x2c8]
mov cl, 0x16
call fcn.00403930
lea edx, [ebp - 0x2c8]
lea eax, [ebp - 0x2f0]
call fcn.004053cc
mov edx, dword [ebp - 0x2f0]
mov ecx, 0xff
mov eax, dword [0x69458c]
call fcn.0053ca7c
mov eax, dword [0x68875c]
mov byte [eax + 0x13365], 0
jmp case.0x50fad2.5079
mov eax, dword [ebp - 0x14]
mov edx, 0x517918
call fcn.00405590
jne 0x50f587
mov eax, dword [0x688d80]
mov byte [eax], 1
mov eax, dword [0x68875c]
cmp byte [eax + 0x26cc], 0
je 0x50f4ee
push 1
push 0
mov edx, 0x517850
lea eax, [ebp - 0x290]
call fcn.00403960
mov edx, dword [0x688f44]
add edx, 0x24fa
lea eax, [ebp - 0x290]
mov cl, 0xf
call fcn.00403930
lea edx, [ebp - 0x290]
lea eax, [ebp - 0x2ac]
call fcn.00403960
mov edx, 0x517854
lea eax, [ebp - 0x2ac]
mov cl, 0x18
call fcn.00403930
lea edx, [ebp - 0x2ac]
lea eax, [ebp - 0x2f4]
call fcn.004053cc
mov edx, dword [ebp - 0x2f4]
mov ecx, 0xffffff
mov eax, dword [0x69458c]
call fcn.0053ca7c
mov eax, dword [0x68875c]
mov byte [eax + 0x26cd], 1
jmp case.0x50fad2.5079
mov eax, dword [0x68875c]
cmp byte [eax + 0x12bee], 0
je case.0x50fad2.5079
push 1
push 0
mov edx, 0x517850
lea eax, [ebp - 0x290]
call fcn.00403960
mov edx, dword [0x688f44]
add edx, 0x11dce
lea eax, [ebp - 0x290]
mov cl, 0xf
call fcn.00403930
lea edx, [ebp - 0x290]
lea eax, [ebp - 0x2ac]
call fcn.00403960
mov edx, 0x517854
lea eax, [ebp - 0x2ac]
mov cl, 0x18
call fcn.00403930
lea edx, [ebp - 0x2ac]
lea eax, [ebp - 0x2f8]
call fcn.004053cc
mov edx, dword [ebp - 0x2f8]
mov ecx, 0xffffff
mov eax, dword [0x69458c]
call fcn.0053ca7c
mov eax, dword [0x68875c]
mov byte [eax + 0x12bef], 1
jmp case.0x50fad2.5079
mov eax, dword [ebp - 0x14]
mov edx, 0x517924
call fcn.00405590
jne 0x50f6d4
mov eax, dword [0x688d80]
mov byte [eax], 0
mov eax, dword [0x68875c]
cmp byte [eax + 0x26cc], 0
je 0x50f63b
push 1
push 0
mov edx, 0x517850
lea eax, [ebp - 0x290]
call fcn.00403960
mov edx, dword [0x688f44]
add edx, 0x24fa
lea eax, [ebp - 0x290]
mov cl, 0xf
call fcn.00403930
lea edx, [ebp - 0x290]
lea eax, [ebp - 0x2c8]
call fcn.00403960
mov edx, 0x517870
lea eax, [ebp - 0x2c8]
mov cl, 0x16
call fcn.00403930
lea edx, [ebp - 0x2c8]
lea eax, [ebp - 0x2fc]
call fcn.004053cc
mov edx, dword [ebp - 0x2fc]
mov ecx, 0xff
mov eax, dword [0x69458c]
call fcn.0053ca7c
mov eax, dword [0x68875c]
mov byte [eax + 0x26cd], 0
jmp case.0x50fad2.5079
mov eax, dword [0x68875c]
cmp byte [eax + 0x12bee], 0
je case.0x50fad2.5079
push 1
push 0
mov edx, 0x517850
lea eax, [ebp - 0x290]
call fcn.00403960
mov edx, dword [0x688f44]
add edx, 0x11dce
lea eax, [ebp - 0x290]
mov cl, 0xf
call fcn.00403930
lea edx, [ebp - 0x290]
lea eax, [ebp - 0x2c8]
call fcn.00403960
mov edx, 0x517870
lea eax, [ebp - 0x2c8]
mov cl, 0x16
call fcn.00403930
lea edx, [ebp - 0x2c8]
lea eax, [ebp - 0x300]
call fcn.004053cc
mov edx, dword [ebp - 0x300]
mov ecx, 0xff
mov eax, dword [0x69458c]
call fcn.0053ca7c
mov eax, dword [0x68875c]
mov byte [eax + 0x12bef], 0
jmp case.0x50fad2.5079
mov eax, dword [ebp - 0x14]
mov edx, 0x517934
call fcn.00405590
jne 0x50f77e
mov eax, dword [0x688ec4]
mov byte [eax], 1
mov eax, dword [0x688628]
mov byte [eax], 1
push 1
push 0
mov edx, 0x517850
lea eax, [ebp - 0x290]
call fcn.00403960
mov edx, dword [0x688f44]
add edx, 0x3d26
lea eax, [ebp - 0x290]
mov cl, 0xf
call fcn.00403930
lea edx, [ebp - 0x290]
lea eax, [ebp - 0x2ac]
call fcn.00403960
mov edx, 0x517854
lea eax, [ebp - 0x2ac]
mov cl, 0x18
call fcn.00403930
lea edx, [ebp - 0x2ac]
lea eax, [ebp - 0x304]
call fcn.004053cc
mov edx, dword [ebp - 0x304]
mov ecx, 0xffffff
mov eax, dword [0x69458c]
call fcn.0053ca7c
mov eax, dword [0x68875c]
mov byte [eax + 0x402b], 1
jmp case.0x50fad2.5079
mov eax, dword [ebp - 0x14]
mov edx, 0x517944
call fcn.00405590
jne 0x50f828
mov eax, dword [0x688ec4]
mov byte [eax], 1
mov eax, dword [0x688628]
mov byte [eax], 0
push 1
push 0
mov edx, 0x517850
lea eax, [ebp - 0x290]
call fcn.00403960
mov edx, dword [0x688f44]
add edx, 0x3d26
lea eax, [ebp - 0x290]
mov cl, 0xf
call fcn.00403930
lea edx, [ebp - 0x290]
lea eax, [ebp - 0x2ac]
call fcn.00403960
mov edx, 0x517854
lea eax, [ebp - 0x2ac]
mov cl, 0x18
call fcn.00403930
lea edx, [ebp - 0x2ac]
lea eax, [ebp - 0x308]
call fcn.004053cc
mov edx, dword [ebp - 0x308]
mov ecx, 0xffffff
mov eax, dword [0x69458c]
call fcn.0053ca7c
mov eax, dword [0x68875c]
mov byte [eax + 0x402b], 1
jmp case.0x50fad2.5079
mov eax, dword [ebp - 0x14]
mov edx, 0x517954
call fcn.00405590
jne 0x50f8ca
mov eax, dword [0x688ec4]
mov byte [eax], 0
push 1
push 0
mov edx, 0x517850
lea eax, [ebp - 0x290]
call fcn.00403960
mov edx, dword [0x688f44]
add edx, 0x3d26
lea eax, [ebp - 0x290]
mov cl, 0xf
call fcn.00403930
lea edx, [ebp - 0x290]
lea eax, [ebp - 0x2c8]
call fcn.00403960
mov edx, 0x517870
lea eax, [ebp - 0x2c8]
mov cl, 0x16
call fcn.00403930
lea edx, [ebp - 0x2c8]
lea eax, [ebp - 0x30c]
call fcn.004053cc
mov edx, dword [ebp - 0x30c]
mov ecx, 0xff
mov eax, dword [0x69458c]
call fcn.0053ca7c
mov eax, dword [0x68875c]
mov byte [eax + 0x402b], 0
jmp case.0x50fad2.5079
mov eax, dword [ebp - 0x14]
mov edx, 0x517964
call fcn.00405590
jne 0x50f90a
mov byte [edi + 0x428], 0
mov eax, dword [0x688320]
inc dword [eax]
cmp dword [ebp - 0x18], 0
je case.0x50fad2.5079
or edx, 0xffffffff
mov eax, dword [ebp - 0x18]
call fcn.0040a1d0
mov edx, eax
mov eax, edi
call fcn.0050e40c
jmp case.0x50fad2.5079
mov eax, dword [ebp - 0x14]
mov edx, 0x517974
call fcn.00405590
jne case.0x50fad2.5079
mov eax, edi
call fcn.0050d838
mov byte [edi + 0x428], 0
mov eax, dword [0x688320]
inc dword [eax]
cmp dword [ebp - 0x18], 0
je case.0x50fad2.5079
or edx, 0xffffffff
mov eax, dword [ebp - 0x18]
call fcn.0040a1d0
mov edx, eax
mov eax, edi
call fcn.0050e40c
jmp case.0x50fad2.5079
mov ebx, dword [ebp - 4]
mov eax, ebx
test eax, eax
je 0x50f963
sub eax, 4
mov eax, dword [eax]
cmp eax, 0x18
jge 0x50f9b7
mov eax, dword [ebp - 4]
cmp byte [eax], 0x3d
jne case.0x50fad2.5079
test ebx, ebx
je 0x50f97d
sub ebx, 4
mov ebx, dword [ebx]
lea eax, [ebp - 0x18]
push eax
mov ecx, ebx
dec ecx
mov edx, 2
mov eax, dword [ebp - 4]
call fcn.00405660
mov eax, dword [ebp - 0x18]
mov edx, 0x517984
call fcn.00405590
jne case.0x50fad2.5079
mov eax, dword [0x688a9c]
mov eax, dword [eax]
mov byte [eax + 0x174], 1
jmp case.0x50fad2.5079
lea eax, [ebp - 8]
push eax
mov ecx, 0x18
mov edx, 1
mov eax, dword [ebp - 4]
call fcn.00405660
test ebx, ebx
je 0x50f9d6
sub ebx, 4
mov ebx, dword [ebx]
lea eax, [ebp - 0xc]
push eax
mov ecx, ebx
sub ecx, 0x18
mov edx, 0x19
mov eax, dword [ebp - 4]
call fcn.00405660
lea edx, [ebp - 0x76]
mov eax, dword [ebp - 8]
call fcn.004adee4
mov eax, dword [0x688a9c]
cmp dword [eax], 0
jne case.0x50fad2.5078
movzx eax, word [ebp - 0x72]
cmp eax, 0x13d2
jg 0x50fab7
je 0x510275
add eax, 0xffffec50
cmp eax, 0x21
ja case.0x50fad2.5079
jmp dword [eax*4 + 0x50fa2f]
cmp eax, 0x1402
jg 0x50faf1
je case.0x50fad2.5078
add eax, 0xffffec2d
cmp eax, 5
ja case.0x50fad2.5079
jmp dword [eax*4 + 0x50fad9]
cmp eax, 0x1494
jg 0x50fb17
je 0x50fc6a
sub eax, 0x1444
je case.0x50fad2.5078
sub eax, 0x31
je 0x510354
jmp case.0x50fad2.5079
sub eax, 0x14bd
je case.0x50fad2.5078
sub eax, 0x16
je case.0x50fad2.5078
jmp case.0x50fad2.5079
mov eax, dword [0x689150]
mov eax, dword [eax]
mov byte [eax + 0xaa8], 0
mov eax, dword [0x689150]
mov eax, dword [eax]
mov eax, dword [eax + 0x36c]
mov edx, 0x517990
call fcn.004922a8
mov eax, dword [0x689150]
mov eax, dword [eax]
mov byte [eax + 0xaa9], 1
mov eax, dword [0x689150]
mov eax, dword [eax]
add eax, 0xaac
mov edx, 0x5179a0
call fcn.004051ac
jmp case.0x50fad2.5078
mov eax, dword [0x689150]
mov eax, dword [eax]
mov byte [eax + 0xaa8], 0
mov eax, dword [0x689150]
mov eax, dword [eax]
mov eax, dword [eax + 0x36c]
mov edx, 0x517990
call fcn.004922a8
mov eax, dword [0x689150]
mov eax, dword [eax]
mov byte [eax + 0xaa9], 1
mov eax, dword [ebp - 0x76]
sub eax, 0xfffffffe
je 0x50fc34
sub eax, 2
jne 0x50fc4f
mov eax, dword [0x689150]
mov eax, dword [eax]
add eax, 0xaac
mov edx, 0x5179bc
call fcn.004051ac
push 0x46
push 0
push 0
push 0x5179c8
push dword [edi + 0x3a0]
push 0x5179d4
lea eax, [ebp - 0x310]
mov edx, 3
call fcn.004054fc
mov edx, dword [ebp - 0x310]
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
call fcn.00553480
xor edx, edx
mov eax, dword [0x69458c]
call fcn.0053c9ec
xor edx, edx
mov eax, dword [0x694590]
call fcn.005a7838
jmp case.0x50fad2.5078
mov eax, dword [0x689150]
mov eax, dword [eax]
add eax, 0xaac
mov edx, 0x517a0c
call fcn.004051ac
jmp case.0x50fad2.5078
mov eax, dword [0x689150]
mov eax, dword [eax]
add eax, 0xaac
mov edx, 0x517a30
call fcn.004051ac
jmp case.0x50fad2.5078
mov eax, dword [0x688de8]
mov eax, dword [eax]
movzx edx, word [ebp - 0x70]
mov word [eax + 0x58c], dx
mov eax, dword [0x688de8]
mov eax, dword [eax]
movzx edx, word [ebp - 0x6c]
mov word [eax + 0x58e], dx
mov eax, dword [0x688de8]
mov eax, dword [eax]
movzx edx, word [ebp - 0x68]
mov word [eax + 0x590], dx
xor edx, edx
mov eax, dword [0x69458c]
call fcn.0053c9ec
mov dl, 5
mov eax, dword [0x694590]
call fcn.005a8d68
jmp case.0x50fad2.5078
mov eax, dword [0x689150]
mov eax, dword [eax]
mov byte [eax + 0xaa8], 0
mov eax, dword [0x689150]
mov eax, dword [eax]
mov eax, dword [eax + 0x36c]
mov edx, 0x517990
call fcn.004922a8
mov eax, dword [0x689150]
mov eax, dword [eax]
mov byte [eax + 0xaa9], 1
mov eax, dword [ebp - 0x76]
add eax, 8
cmp eax, 7
ja case.default.0x50fcff
jmp dword [eax*4 + 0x50fd06]
mov eax, dword [0x689150]
mov eax, dword [eax]
add eax, 0xaac
mov edx, 0x517a50
call fcn.004051ac
jmp case.0x50fad2.5078
mov eax, dword [0x689150]
mov eax, dword [eax]
add eax, 0xaac
mov edx, 0x517a70
call fcn.004051ac
jmp case.0x50fad2.5078
mov eax, dword [0x689150]
mov eax, dword [eax]
add eax, 0xaac
mov edx, 0x517a98
call fcn.004051ac
jmp case.0x50fad2.5078
mov eax, dword [0x689150]
mov eax, dword [eax]
add eax, 0xaac
mov edx, 0x517ac4
call fcn.004051ac
jmp case.0x50fad2.5078
mov eax, dword [0x689150]
mov eax, dword [eax]
add eax, 0xaac
mov edx, 0x517ae8
call fcn.004051ac
jmp case.0x50fad2.5078
mov byte [edi + 0x441], 1
mov eax, dword [0x694588]
mov eax, dword [eax + 0x360]
xor edx, edx
call fcn.004762e4
mov eax, dword [0x689150]
mov eax, dword [eax]
add eax, 0xaac
mov edx, 0x517b08
call fcn.004051ac
mov eax, dword [0x689150]
mov eax, dword [eax]
mov byte [eax + 0xaa8], 3
mov eax, dword [0x689150]
mov eax, dword [eax]
mov eax, dword [eax + 0x36c]
mov edx, 0x517b2c
call fcn.004922a8
mov eax, dword [0x689150]
mov eax, dword [eax]
mov byte [eax + 0xaa9], 1
jmp case.0x50fad2.5078
mov eax, dword [0x689150]
mov eax, dword [eax]
add eax, 0xaac
mov edx, 0x517b3c
call fcn.004051ac
jmp case.0x50fad2.5078
mov byte [edi + 0x441], 1
mov eax, dword [0x694588]
mov eax, dword [eax + 0x360]
xor edx, edx
call fcn.004762e4
mov eax, dword [0x689150]
mov eax, dword [eax]
add eax, 0xaac
mov edx, 0x517b68
call fcn.004051ac
mov eax, dword [0x689150]
mov eax, dword [eax]
mov byte [eax + 0xaa8], 5
mov eax, dword [0x689150]
mov eax, dword [eax]
mov eax, dword [eax + 0x36c]
mov edx, 0x517b2c
call fcn.004922a8
mov eax, dword [0x689150]
mov eax, dword [eax]
mov byte [eax + 0xaa9], 1
jmp case.0x50fad2.5078
mov eax, dword [0x689150]
mov eax, dword [eax]
add eax, 0xaac
mov edx, 0x517b94
call fcn.004051ac
jmp case.0x50fad2.5078
mov edx, dword [ebp - 0xc]
mov eax, edi
call fcn.00519544
cmp dword [ebp - 0x68], 0
je 0x50feda
mov eax, dword [0x68906c]
mov eax, dword [eax]
mov edx, 0x5c8
call fcn.0048ec40
test eax, eax
je 0x50feda
xor eax, eax
jmp 0x50fedc
mov al, 1
mov edx, dword [0x688ee4]
mov byte [edx], al
jmp case.0x50fad2.5078
mov edx, dword [ebp - 0xc]
mov eax, edi
call fcn.005196f8
jmp case.0x50fad2.5078
lea edx, [ebp - 0x76]
mov ecx, dword [ebp - 0xc]
mov eax, edi
call fcn.0051e94c
jmp case.0x50fad2.5078
mov eax, dword [0x689150]
mov eax, dword [eax]
mov byte [eax + 0xaa8], 1
mov eax, dword [0x689150]
mov eax, dword [eax]
add eax, 0xaac
mov edx, 0x517bb0
call fcn.004051ac
mov eax, dword [0x689150]
mov eax, dword [eax]
mov eax, dword [eax + 0x36c]
mov edx, 0x517990
call fcn.004922a8
mov eax, dword [0x689150]
mov eax, dword [eax]
mov byte [eax + 0xaa9], 1
mov eax, edi
call fcn.0050b274
jmp case.0x50fad2.5078
mov eax, dword [0x688da0]
mov byte [eax], 0
mov eax, dword [0x68903c]
mov byte [eax], 0
mov eax, dword [0x688be4]
mov byte [eax], 0
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x517be0
call fcn.00553480
mov eax, edi
call fcn.00462e3c
jmp case.0x50fad2.5078
mov eax, dword [0x689150]
mov eax, dword [eax]
mov byte [eax + 0xaa8], 1
mov eax, dword [0x689150]
mov eax, dword [eax]
add eax, 0xaac
mov edx, 0x517bfc
call fcn.004051ac
mov eax, dword [0x689150]
mov eax, dword [eax]
mov eax, dword [eax + 0x36c]
mov edx, 0x517990
call fcn.004922a8
mov eax, dword [0x689150]
mov eax, dword [eax]
mov byte [eax + 0xaa9], 1
mov dl, 4
mov eax, dword [0x69458c]
call fcn.0053c9ec
mov eax, edi
call fcn.0050b274
jmp case.0x50fad2.5078
mov eax, dword [0x689150]
mov eax, dword [eax]
mov byte [eax + 0xaa8], 1
mov eax, dword [0x689150]
mov eax, dword [eax]
mov eax, dword [eax + 0x36c]
mov edx, 0x517990
call fcn.004922a8
mov eax, dword [0x689150]
mov eax, dword [eax]
mov byte [eax + 0xaa9], 1
mov eax, dword [ebp - 0x76]
add eax, 2
cmp eax, 7
ja case.default.0x510044
jmp dword [eax*4 + 0x51004b]
mov eax, dword [0x689150]
mov eax, dword [eax]
add eax, 0xaac
mov edx, 0x517c2c
call fcn.004051ac
jmp case.0x50fad2.5078
mov eax, dword [0x689150]
mov eax, dword [eax]
add eax, 0xaac
mov edx, 0x517c58
call fcn.004051ac
jmp case.0x50fad2.5078
mov eax, dword [0x689150]
mov eax, dword [eax]
add eax, 0xaac
mov edx, 0x517c80
call fcn.004051ac
jmp case.0x50fad2.5078
mov eax, dword [0x689150]
mov eax, dword [eax]
add eax, 0xaac
mov edx, 0x517cb0
call fcn.004051ac
jmp case.0x50fad2.5078
mov eax, dword [0x689150]
mov eax, dword [eax]
add eax, 0xaac
mov edx, 0x517ce0
call fcn.004051ac
jmp case.0x50fad2.5078
mov eax, dword [0x689150]
mov eax, dword [eax]
add eax, 0xaac
mov edx, 0x517d0c
call fcn.004051ac
jmp case.0x50fad2.5078
mov eax, dword [0x689150]
mov eax, dword [eax]
add eax, 0xaac
mov edx, 0x517d40
call fcn.004051ac
jmp case.0x50fad2.5078
mov eax, dword [0x689150]
mov eax, dword [eax]
add eax, 0xaac
mov edx, 0x517c2c
call fcn.004051ac
jmp case.0x50fad2.5078
mov eax, dword [0x689150]
mov eax, dword [eax]
mov byte [eax + 0xaa8], 0
mov eax, dword [0x689150]
mov eax, dword [eax]
mov eax, dword [eax + 0x36c]
mov edx, 0x517990
call fcn.004922a8
mov eax, dword [0x689150]
mov eax, dword [eax]
add eax, 0xaac
mov edx, 0x517d64
call fcn.004051ac
mov eax, dword [0x689150]
mov eax, dword [eax]
mov byte [eax + 0xaa9], 1
jmp case.0x50fad2.5078
mov eax, dword [0x689150]
mov eax, dword [eax]
mov byte [eax + 0xaa8], 0
mov eax, dword [0x689150]
mov eax, dword [eax]
mov eax, dword [eax + 0x36c]
mov edx, 0x517990
call fcn.004922a8
mov eax, dword [0x689150]
mov eax, dword [eax]
mov byte [eax + 0xaa9], 1
mov eax, dword [ebp - 0x76]
sub eax, 0xfffffffe
je 0x5101ea
dec eax
jne 0x510205
mov eax, dword [0x689150]
mov eax, dword [eax]
add eax, 0xaac
mov edx, 0x517d80
call fcn.004051ac
jmp case.0x50fad2.5078
mov eax, dword [0x689150]
mov eax, dword [eax]
add eax, 0xaac
mov edx, 0x517a70
call fcn.004051ac
jmp case.0x50fad2.5078
mov eax, dword [0x689150]
mov eax, dword [eax]
add eax, 0xaac
mov edx, 0x517d80
call fcn.004051ac
jmp case.0x50fad2.5078
mov eax, dword [0x689150]
mov eax, dword [eax]
mov byte [eax + 0xaa8], 1
mov eax, dword [0x689150]
mov eax, dword [eax]
add eax, 0xaac
mov edx, 0x517da8
call fcn.004051ac
mov eax, dword [0x689150]
mov eax, dword [eax]
mov eax, dword [eax + 0x36c]
mov edx, 0x517990
call fcn.004922a8
mov eax, dword [0x689150]
mov eax, dword [eax]
mov byte [eax + 0xaa9], 1
mov eax, edi
call fcn.0050b274
jmp case.0x50fad2.5078
mov eax, dword [0x689150]
mov eax, dword [eax]
mov byte [eax + 0xaa8], 1
mov eax, dword [0x689150]
mov eax, dword [eax]
add eax, 0xaac
mov edx, 0x517dd8
call fcn.004051ac
mov eax, dword [0x689150]
mov eax, dword [eax]
mov eax, dword [eax + 0x36c]
mov edx, 0x517990
call fcn.004922a8
mov eax, dword [0x689150]
mov eax, dword [eax]
mov byte [eax + 0xaa9], 1
jmp case.0x50fad2.5078
mov eax, dword [0x689150]
mov eax, dword [eax]
mov byte [eax + 0xaa8], 3
mov eax, dword [0x689150]
mov eax, dword [eax]
add eax, 0xaac
mov edx, 0x517dfc
call fcn.004051ac
mov eax, dword [0x689150]
mov eax, dword [eax]
mov eax, dword [eax + 0x36c]
mov edx, 0x517e20
call fcn.004922a8
mov eax, dword [0x689150]
mov eax, dword [eax]
mov byte [eax + 0xaa9], 0
mov dl, 4
mov eax, dword [0x69458c]
call fcn.0053c9ec
mov edx, dword [ebp - 0xc]
mov eax, edi
call fcn.005199d0
jmp case.0x50fad2.5079
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x517e30
call fcn.00553480
mov eax, dword [0x694588]
call fcn.00462e3c
jmp case.0x50fad2.5079
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x517e48
call fcn.00553480
jmp case.0x50fad2.5079
movzx eax, word [ebp - 0x72]
add eax, 0xffffec77
cmp eax, 0x19a
ja case.0x51038b.5030
jmp dword [eax*4 + 0x510392]
push edi
add edi, 0x3c8
lea esi, [ebp - 0x76]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
pop edi
lea edx, [ebp - 0x314]
mov eax, dword [ebp - 0xc]
call fcn.004adf90
mov edx, dword [ebp - 0x314]
lea eax, [edi + 0x3dc]
call fcn.004051ac
mov eax, dword [0x68826c]
mov byte [eax], 1
mov eax, dword [edi + 0x36c]
mov dl, 1
call fcn.00436fe8
jmp case.0x51038b.5039
movzx ebx, word [ebp - 0x70]
movzx eax, word [ebp - 0x6c]
shl eax, 0x10
or ebx, eax
lea edx, [ebp - 0x34]
mov ecx, 4
mov eax, dword [ebp - 0xc]
call fcn.004ae020
mov eax, dword [0x6889d4]
mov eax, dword [eax]
cmp eax, dword [ebp - 0x76]
je case.0x51038b.5039
mov eax, dword [0x6889d4]
cmp ebx, dword [eax]
je case.0x51038b.5039
mov eax, dword [0x6889d4]
mov eax, dword [eax]
cmp eax, dword [ebp - 0x34]
je case.0x51038b.5039
cmp dword [ebp - 0x34], 1
jne case.0x51038b.5039
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x517e48
call fcn.00553480
mov eax, dword [edi + 0x360]
call fcn.004764d0
jmp case.0x50fad2.5079
mov eax, dword [0x688af0]
mov byte [eax], 0
mov eax, dword [0x68826c]
mov byte [eax], 0
mov eax, dword [0x6886ec]
cmp byte [eax], 0
je case.0x51038b.5039
mov eax, dword [0x6891ac]
cmp dword [eax], 0
je case.0x51038b.5039
mov eax, dword [0x6891ac]
mov eax, dword [eax]
call fcn.00595554
jmp case.0x51038b.5039
mov eax, dword [0x688b0c]
call fcn.00405158
mov eax, dword [0x688830]
xor edx, edx
mov dword [eax], edx
lea edx, [ebp - 0x1c]
mov eax, dword [ebp - 0xc]
call fcn.004adf90
mov eax, dword [0x6945ac]
mov dword [eax + 0xa6f91], 0xffffffff
call fcn.005ad05c
mov eax, dword [0x6883c4]
mov eax, dword [eax]
add eax, 0x2349b64
mov edx, dword [ebp - 0x1c]
call fcn.004051ac
lea edx, [ebp - 0x318]
mov eax, dword [ebp - 0x1c]
call fcn.0057bc70
mov edx, dword [ebp - 0x318]
mov eax, dword [0x6883c4]
mov eax, dword [eax]
call fcn.004a7f08
mov eax, dword [ebp - 0x70]
push eax
mov eax, dword [ebp - 0x6c]
push eax
mov eax, dword [ebp - 0x68]
push eax
push 0
push 0
mov eax, dword [ebp - 0x1c]
push eax
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
xor ecx, ecx
mov edx, 0x13b1
mov eax, dword [0x694598]
call fcn.0052dd50
mov edx, dword [ebp - 0x1c]
mov eax, edi
call fcn.0050d87c
jmp case.0x51038b.5039
mov eax, dword [0x6882a0]
xor edx, edx
mov dword [eax], edx
mov eax, dword [0x6888fc]
xor edx, edx
mov dword [eax], edx
lea edx, [ebp - 0x91]
mov ecx, 0x10
mov eax, dword [ebp - 0xc]
call fcn.004ae020
mov eax, dword [ebp - 0x70]
push eax
mov eax, dword [ebp - 0x6c]
push eax
mov eax, dword [ebp - 0x68]
push eax
mov eax, dword [ebp - 0x91]
push eax
mov eax, dword [ebp - 0x8d]
push eax
push 0
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
mov ecx, dword [ebp - 0x76]
mov edx, 0x13b0
mov eax, dword [0x694598]
call fcn.0052dd50
mov dl, 2
mov eax, dword [0x69458c]
call fcn.0053c9ec
mov eax, dword [0x688e48]
mov edx, dword [ebp - 0x89]
mov dword [eax], edx
mov eax, dword [0x6882e0]
mov byte [eax], 0
mov eax, dword [0x68837c]
movzx edx, word [ebp - 0x85]
mov word [eax], dx
call fcn.004f15c0
mov eax, dword [edi + 0x420]
call fcn.004f10b8
mov eax, dword [0x688a9c]
cmp dword [eax], 0
je 0x510c66
mov eax, dword [0x689150]
mov eax, dword [eax]
call fcn.0056bd24
call sub.kernel32.dll_GetTickCount
add eax, 0xea60
mov dword [edi + 0x5b8], eax
mov eax, dword [0x688dd0]
mov byte [eax], 0
push 0
push 0
push 0
push 0
xor ecx, ecx
mov edx, 0x4f
mov eax, edi
call fcn.0050a960
jmp case.0x51038b.5039
mov eax, dword [ebp - 0x76]
mov dword [ebp - 0x48], eax
movzx eax, word [ebp - 0x70]
mov word [ebp - 0x44], ax
movzx eax, word [ebp - 0x6c]
mov word [ebp - 0x42], ax
mov eax, dword [0x688814]
mov edx, dword [ebp - 0x48]
mov dword [eax], edx
mov edx, dword [ebp - 0x44]
mov dword [eax + 4], edx
call sub.kernel32.dll_GetTickCount
mov edx, dword [0x6888f4]
mov dword [edx], eax
jmp case.0x51038b.5039
mov eax, dword [0x68838c]
mov edx, dword [ebp - 0x76]
mov dword [eax], edx
movzx eax, word [ebp - 0x70]
movzx edx, word [ebp - 0x6c]
shl edx, 0x10
or eax, edx
mov edx, dword [0x68871c]
mov dword [edx], eax
cmp dword [ebp - 0xc], 0
je 0x510d23
mov edx, dword [0x688804]
mov ecx, 0x30
mov eax, dword [ebp - 0xc]
call fcn.004ae020
mov eax, dword [0x68825c]
xor ecx, ecx
mov edx, 0x3c
call fcn.00488380
mov ecx, dword [0x688804]
add ecx, 0x20
mov edx, dword [0x688804]
mov eax, dword [0x68825c]
call fcn.0048a70c
mov eax, dword [0x68838c]
cmp dword [eax], 0
jg 0x510d37
mov eax, dword [0x68871c]
cmp dword [eax], 0
jle 0x510d55
mov eax, dword [0x688a50]
cmp dword [eax], 0
jne 0x510d55
mov eax, dword [0x689150]
mov eax, dword [eax]
mov eax, dword [eax + 0x914]
mov dl, 1
call fcn.00493140
mov eax, dword [0x689150]
mov eax, dword [eax]
call fcn.0056b658
jmp case.0x51038b.5039
cmp dword [ebp - 0x76], 1
sete al
mov edx, dword [0x688c30]
mov byte [edx + 0x88], al
mov eax, dword [0x688c30]
movzx edx, byte [ebp - 0x70]
mov byte [eax + 9], dl
movzx eax, word [ebp - 0x70]
shr eax, 8
mov edx, dword [0x688c30]
mov byte [edx + 0xa], al
mov eax, dword [0x688c30]
movzx edx, byte [ebp - 0x6c]
mov byte [eax + 0xb], dl
movzx eax, word [ebp - 0x6c]
shr eax, 8
mov edx, dword [0x688c30]
mov byte [edx + 0xc], al
mov eax, dword [0x688c30]
movzx edx, byte [ebp - 0x68]
mov byte [eax + 0xd], dl
movzx eax, word [ebp - 0x68]
shr eax, 8
mov edx, dword [0x688c30]
mov byte [edx + 0xe], al
push 0
lea eax, [ebp - 0x31c]
push eax
lea edx, [ebp - 0x320]
mov eax, dword [ebp - 0xc]
call fcn.004adf90
mov eax, dword [ebp - 0x320]
mov byte [ebp - 0x230], 0x2f
lea ecx, [ebp - 0x230]
lea edx, [ebp - 0x1c]
call fcn.00488938
mov edx, dword [ebp - 0x31c]
lea eax, [ebp - 0xc]
call fcn.004051f0
lea eax, [ebp - 0x420]
mov edx, dword [ebp - 0x1c]
mov ecx, 0xff
call fcn.00405404
lea edx, [ebp - 0x420]
mov eax, dword [0x688c30]
add eax, 0x89
mov cl, 0x10
call fcn.0040396c
push 0
lea eax, [ebp - 0x424]
push eax
mov byte [ebp - 0x230], 0x2f
lea ecx, [ebp - 0x230]
lea edx, [ebp - 0x1c]
mov eax, dword [ebp - 0xc]
call fcn.00488938
mov edx, dword [ebp - 0x424]
lea eax, [ebp - 0xc]
call fcn.004051f0
lea eax, [ebp - 0x420]
mov edx, dword [ebp - 0x1c]
mov ecx, 0xff
call fcn.00405404
lea edx, [ebp - 0x420]
mov eax, dword [0x688c30]
mov cl, 8
call fcn.0040396c
lea eax, [ebp - 0x420]
mov edx, dword [ebp - 0xc]
mov ecx, 0xff
call fcn.00405404
lea edx, [ebp - 0x420]
mov eax, dword [0x688c30]
add eax, 0xf
mov cl, 0x78
call fcn.0040396c
mov eax, dword [0x688c30]
cmp byte [eax + 0x89], 0
je 0x510f65
mov eax, dword [0x689144]
push dword [eax]
lea eax, [ebp - 0x42c]
mov edx, dword [0x688c30]
add edx, 0x89
call fcn.004053cc
push dword [ebp - 0x42c]
push 0x517e80
lea eax, [ebp - 0x428]
mov edx, 3
call fcn.004054fc
mov eax, dword [ebp - 0x428]
call fcn.0040a570
test al, al
je 0x510f65
mov eax, dword [0x689144]
push dword [eax]
lea eax, [ebp - 0x434]
mov edx, dword [0x688c30]
add edx, 0x89
call fcn.004053cc
push dword [ebp - 0x434]
push 0x517e80
lea eax, [ebp - 0x430]
mov edx, 3
call fcn.004054fc
mov edx, dword [ebp - 0x430]
mov eax, dword [0x689150]
mov eax, dword [eax]
lea ecx, [eax + 0x215c]
mov eax, dword [0x689150]
mov eax, dword [eax]
call fcn.0056b884
mov eax, dword [0x689150]
mov eax, dword [eax]
call fcn.0056ba6c
jmp case.0x51038b.5039
mov ecx, dword [ebp - 0xc]
lea edx, [ebp - 0x76]
mov eax, edi
call fcn.0052266c
jmp case.0x51038b.5039
mov edx, dword [ebp - 0xc]
mov eax, edi
call fcn.00519b0c
jmp case.0x51038b.5039
mov ecx, dword [ebp - 0xc]
lea edx, [ebp - 0x76]
mov eax, edi
call fcn.00519d64
jmp case.0x51038b.5039
mov edx, dword [ebp - 0x76]
mov eax, edi
call fcn.0050e40c
jmp case.0x51038b.5039
mov ecx, dword [ebp - 0xc]
lea edx, [ebp - 0x76]
mov eax, edi
call fcn.00519bfc
jmp case.0x51038b.5039
mov eax, dword [0x688a9c]
cmp dword [eax], 0
je case.0x50fad2.5079
mov eax, dword [0x68824c]
mov edx, dword [ebp - 0x76]
mov dword [eax], edx
movzx eax, word [ebp - 0x6c]
movzx edx, word [ebp - 0x68]
shl edx, 0x10
or eax, edx
mov edx, dword [0x688c9c]
mov dword [edx], eax
mov eax, dword [0x688bcc]
mov edx, dword [ebp - 0x70]
mov dword [eax], edx
jmp case.0x51038b.5039
mov ecx, dword [ebp - 0xc]
lea edx, [ebp - 0x76]
mov eax, edi
call fcn.0051a9bc
jmp case.0x51038b.5039
mov eax, dword [0x688cd0]
mov edx, dword [ebp - 0x70]
mov dword [eax], edx
jmp case.0x51038b.5039
mov edx, dword [ebp - 0x76]
mov eax, dword [0x694598]
call fcn.0052c1b8
mov esi, eax
test esi, esi
je case.0x51038b.5039
mov eax, dword [ebp - 0x68]
push eax
mov ecx, dword [ebp - 0x6c]
mov edx, dword [ebp - 0x70]
mov eax, esi
call fcn.0059e440
jmp case.0x51038b.5039
push 0x517e90
lea edx, [ebp - 0x43c]
mov eax, dword [ebp - 0xc]
call fcn.004adf90
push dword [ebp - 0x43c]
push 0x517ea0
lea eax, [ebp - 0x438]
mov edx, 3
call fcn.004054fc
mov eax, dword [ebp - 0x438]
call fcn.00595554
jmp case.0x51038b.5039
mov eax, dword [0x688d50]
mov byte [eax], 1
jmp case.0x51038b.5039
lea edx, [ebp - 0x440]
mov eax, dword [ebp - 0xc]
call fcn.004adf90
mov edx, dword [ebp - 0x440]
mov eax, dword [0x688de8]
mov eax, dword [eax]
add eax, 0x6f4
call fcn.004051ac
imul eax, dword [ebp - 0x68], 0x3e8
mov edx, dword [0x688de8]
mov edx, dword [edx]
mov dword [edx + 0x6f8], eax
call sub.kernel32.dll_GetTickCount
mov edx, dword [0x688de8]
mov edx, dword [edx]
mov dword [edx + 0x6fc], eax
mov eax, dword [0x688de8]
mov eax, dword [eax]
mov edx, dword [ebp - 0x6c]
mov dword [eax + 0x700], edx
mov eax, dword [0x688de8]
mov eax, dword [eax]
mov edx, dword [ebp - 0x76]
mov dword [eax + 0x704], edx
mov eax, dword [0x688de8]
mov eax, dword [eax]
mov edx, dword [ebp - 0x70]
mov dword [eax + 0x708], edx
mov eax, dword [0x688de8]
mov eax, dword [eax]
mov eax, dword [eax + 0x514]
mov dl, 1
call fcn.00493bf0
mov eax, dword [0x688de8]
mov eax, dword [eax]
cmp dword [eax + 0x700], 0x75
jne case.0x51038b.5039
mov eax, dword [0x688de8]
mov eax, dword [eax]
mov eax, dword [eax + 0x504]
xor edx, edx
call fcn.00493bf0
jmp case.0x51038b.5039
mov eax, dword [0x688a9c]
cmp dword [eax], 0
je case.0x50fad2.5079
mov eax, dword [0x688f6c]
mov edx, dword [ebp - 0x76]
mov dword [eax], edx
mov eax, dword [0x688fdc]
mov edx, dword [ebp - 0x70]
mov dword [eax], edx
mov eax, dword [0x68820c]
mov edx, dword [ebp - 0x6c]
mov dword [eax], edx
mov eax, dword [0x6888b0]
mov edx, dword [ebp - 0x68]
mov dword [eax], edx
jmp case.0x51038b.5039
mov eax, dword [0x688a9c]
cmp dword [eax], 0
je case.0x50fad2.5079
mov eax, dword [0x6891cc]
mov edx, dword [ebp - 0x76]
mov dword [eax], edx
mov eax, dword [0x688c78]
mov edx, dword [ebp - 0x70]
mov dword [eax], edx
mov eax, dword [0x688d04]
mov edx, dword [ebp - 0x6c]
mov dword [eax], edx
mov eax, dword [0x6887d0]
mov edx, dword [ebp - 0x68]
mov dword [eax], edx
jmp case.0x51038b.5039
mov eax, dword [0x688a9c]
cmp dword [eax], 0
je case.0x50fad2.5079
mov eax, dword [0x688fc0]
mov edx, dword [ebp - 0x76]
mov dword [eax], edx
mov eax, dword [0x68890c]
mov edx, dword [ebp - 0x70]
mov dword [eax], edx
mov eax, dword [0x689038]
mov edx, dword [ebp - 0x6c]
mov dword [eax], edx
mov eax, dword [0x688ccc]
mov edx, dword [ebp - 0x68]
mov dword [eax], edx
jmp case.0x51038b.5039
mov eax, dword [0x688a9c]
cmp dword [eax], 0
je case.0x50fad2.5079
mov eax, dword [0x6891c8]
mov edx, dword [ebp - 0x76]
mov dword [eax], edx
mov eax, dword [0x6882b8]
mov edx, dword [ebp - 0x70]
mov dword [eax], edx
mov eax, dword [0x688270]
mov edx, dword [ebp - 0x6c]
mov dword [eax], edx
mov eax, dword [0x68831c]
mov edx, dword [ebp - 0x68]
mov dword [eax], edx
jmp case.0x51038b.5039
mov eax, dword [0x688a9c]
cmp dword [eax], 0
je case.0x50fad2.5079
mov eax, dword [0x688bb0]
mov edx, dword [ebp - 0x76]
mov dword [eax], edx
mov eax, dword [0x688c50]
mov edx, dword [ebp - 0x70]
mov dword [eax], edx
mov eax, dword [0x688c1c]
mov edx, dword [ebp - 0x6c]
mov dword [eax], edx
mov eax, dword [0x688ca8]
mov edx, dword [ebp - 0x68]
mov dword [eax], edx
jmp case.0x51038b.5039
mov eax, dword [0x688a9c]
cmp dword [eax], 0
je case.0x50fad2.5079
mov eax, dword [0x688d58]
mov edx, dword [ebp - 0x76]
mov dword [eax], edx
mov eax, dword [0x688f58]
mov edx, dword [ebp - 0x70]
mov dword [eax], edx
mov eax, dword [0x688c74]
mov edx, dword [ebp - 0x6c]
mov dword [eax], edx
mov eax, dword [0x688408]
mov edx, dword [ebp - 0x68]
mov dword [eax], edx
jmp case.0x51038b.5039
mov eax, dword [0x688a9c]
cmp dword [eax], 0
je case.0x50fad2.5079
mov eax, dword [0x6884a0]
mov edx, dword [ebp - 0x76]
mov dword [eax], edx
mov eax, dword [0x688f54]
mov edx, dword [ebp - 0x70]
mov dword [eax], edx
mov eax, dword [0x689020]
mov edx, dword [ebp - 0x6c]
mov dword [eax], edx
mov eax, dword [0x6883ac]
mov edx, dword [ebp - 0x68]
mov dword [eax], edx
jmp case.0x51038b.5039
mov eax, dword [0x688a9c]
cmp dword [eax], 0
je case.0x50fad2.5079
mov eax, dword [0x689108]
mov edx, dword [ebp - 0x76]
mov dword [eax], edx
mov eax, dword [0x6891c4]
mov edx, dword [ebp - 0x70]
mov dword [eax], edx
mov eax, dword [0x688bd0]
mov edx, dword [ebp - 0x6c]
mov dword [eax], edx
mov eax, dword [0x6888e8]
mov edx, dword [ebp - 0x68]
mov dword [eax], edx
jmp case.0x51038b.5039
mov eax, dword [0x688a9c]
cmp dword [eax], 0
je case.0x50fad2.5079
mov eax, dword [0x688f50]
mov edx, dword [ebp - 0x76]
mov dword [eax], edx
mov eax, dword [0x68901c]
mov edx, dword [ebp - 0x70]
mov dword [eax], edx
mov eax, dword [0x688fbc]
mov edx, dword [ebp - 0x6c]
mov dword [eax], edx
mov eax, dword [0x68907c]
mov edx, dword [ebp - 0x68]
mov dword [eax], edx
jmp case.0x51038b.5039
mov eax, dword [0x688a9c]
cmp dword [eax], 0
je case.0x50fad2.5079
mov eax, dword [0x6890ec]
mov edx, dword [ebp - 0x76]
mov dword [eax], edx
mov eax, dword [0x688d94]
mov edx, dword [ebp - 0x70]
mov dword [eax], edx
mov eax, dword [0x6890f8]
mov edx, dword [ebp - 0x6c]
mov dword [eax], edx
mov eax, dword [0x6891a8]
mov edx, dword [ebp - 0x68]
mov dword [eax], edx
jmp case.0x51038b.5039
mov eax, dword [0x688a9c]
cmp dword [eax], 0
je case.0x50fad2.5079
mov eax, dword [0x688874]
mov edx, dword [ebp - 0x76]
mov dword [eax], edx
mov eax, dword [0x688394]
mov edx, dword [ebp - 0x70]
mov dword [eax], edx
mov eax, dword [0x688430]
mov edx, dword [ebp - 0x6c]
mov dword [eax], edx
mov eax, dword [0x688e20]
mov edx, dword [ebp - 0x68]
mov dword [eax], edx
jmp case.0x51038b.5039
mov eax, dword [0x688a9c]
cmp dword [eax], 0
je case.0x50fad2.5079
mov eax, dword [0x688568]
mov edx, dword [ebp - 0x76]
mov dword [eax], edx
mov eax, dword [0x68902c]
mov edx, dword [ebp - 0x70]
mov dword [eax], edx
mov eax, dword [0x6890e8]
mov edx, dword [ebp - 0x6c]
mov dword [eax], edx
mov eax, dword [0x688b7c]
mov edx, dword [ebp - 0x68]
mov dword [eax], edx
jmp case.0x51038b.5039
mov eax, dword [0x688a9c]
cmp dword [eax], 0
je case.0x50fad2.5079
mov eax, dword [0x6890e4]
mov edx, dword [ebp - 0x76]
mov dword [eax], edx
mov eax, dword [0x689184]
mov edx, dword [ebp - 0x70]
mov dword [eax], edx
mov eax, dword [0x688c18]
mov edx, dword [ebp - 0x6c]
mov dword [eax], edx
mov eax, dword [0x688838]
mov edx, dword [ebp - 0x68]
mov dword [eax], edx
jmp case.0x51038b.5039
mov eax, dword [0x688a9c]
cmp dword [eax], 0
je case.0x50fad2.5079
mov eax, dword [0x6884c8]
mov edx, dword [ebp - 0x76]
mov dword [eax], edx
mov eax, dword [0x688558]
mov edx, dword [ebp - 0x70]
mov dword [eax], edx
mov eax, dword [0x6884b8]
mov edx, dword [ebp - 0x6c]
mov dword [eax], edx
mov eax, dword [0x688548]
mov edx, dword [ebp - 0x68]
mov dword [eax], edx
jmp case.0x51038b.5039
mov eax, dword [0x688a9c]
cmp dword [eax], 0
je case.0x50fad2.5079
mov eax, dword [0x688a00]
mov edx, dword [ebp - 0x76]
mov dword [eax], edx
mov eax, dword [0x688ab4]
mov edx, dword [ebp - 0x70]
mov dword [eax], edx
mov eax, dword [0x688a20]
mov edx, dword [ebp - 0x6c]
mov dword [eax], edx
mov eax, dword [0x688adc]
mov edx, dword [ebp - 0x68]
mov dword [eax], edx
jmp case.0x51038b.5039
mov eax, dword [0x688a9c]
cmp dword [eax], 0
je case.0x50fad2.5079
mov eax, dword [0x688674]
mov edx, dword [ebp - 0x76]
mov dword [eax], edx
mov eax, dword [0x6886f4]
mov edx, dword [ebp - 0x70]
mov dword [eax], edx
mov eax, dword [0x68873c]
mov edx, dword [ebp - 0x6c]
mov dword [eax], edx
mov eax, dword [0x6887cc]
mov edx, dword [ebp - 0x68]
mov dword [eax], edx
jmp case.0x51038b.5039
mov eax, dword [0x688a9c]
cmp dword [eax], 0
je case.0x50fad2.5079
mov eax, dword [0x688bc4]
mov edx, dword [ebp - 0x76]
mov dword [eax], edx
mov eax, dword [0x688c60]
mov edx, dword [ebp - 0x70]
mov dword [eax], edx
mov eax, dword [0x688e1c]
mov edx, dword [ebp - 0x6c]
mov dword [eax], edx
mov eax, dword [0x688ee0]
mov edx, dword [ebp - 0x68]
mov dword [eax], edx
jmp case.0x51038b.5039
mov eax, dword [0x688a9c]
cmp dword [eax], 0
je case.0x50fad2.5079
mov eax, dword [0x688c5c]
mov edx, dword [ebp - 0x76]
mov dword [eax], edx
mov eax, dword [0x688ce0]
mov edx, dword [ebp - 0x70]
mov dword [eax], edx
mov eax, dword [0x688bac]
mov edx, dword [ebp - 0x6c]
mov dword [eax], edx
mov eax, dword [0x688c4c]
mov edx, dword [ebp - 0x68]
mov dword [eax], edx
jmp case.0x51038b.5039
mov eax, dword [0x688de8]
mov eax, dword [eax]
mov eax, dword [eax + 0x514]
xor edx, edx
call fcn.00493bf0
jmp case.0x51038b.5039
mov ebx, dword [ebp - 0xc]
test ebx, ebx
je 0x5115a8
sub ebx, 4
mov ebx, dword [ebx]
push 0x402d5555
push 0x55555555
call fcn.00488758
cmp ebx, eax
jle 0x511612
mov ebx, dword [ebp - 0xc]
test ebx, ebx
je 0x5115c7
sub ebx, 4
mov ebx, dword [ebx]
lea eax, [ebp - 0x10]
push eax
push 0x402d5555
push 0x55555555
call fcn.00488758
mov edx, eax
inc edx
mov ecx, ebx
mov eax, dword [ebp - 0xc]
call fcn.00405660
lea edx, [ebp - 0x18]
mov eax, dword [ebp - 0x10]
call fcn.004adf90
push 0
lea eax, [ebp - 0x1c]
push eax
mov byte [ebp - 0x230], 0x2f
lea ecx, [ebp - 0x230]
lea edx, [ebp - 0x18]
mov eax, dword [ebp - 0x18]
call fcn.00488aec
jmp 0x51161a
lea eax, [ebp - 0x18]
call fcn.00405158
lea edx, [ebp - 0x81]
mov ecx, 0xb
mov eax, dword [ebp - 0xc]
call fcn.004ae020
mov eax, dword [ebp - 0x70]
push eax
mov eax, dword [ebp - 0x6c]
push eax
mov eax, dword [ebp - 0x68]
push eax
mov eax, dword [ebp - 0x81]
push eax
mov eax, dword [ebp - 0x7d]
push eax
push 0
movzx eax, byte [ebp - 0x79]
push eax
movzx eax, byte [ebp - 0x78]
push eax
movzx eax, byte [ebp - 0x77]
push eax
mov ecx, dword [ebp - 0x76]
mov edx, 0x138d
mov eax, dword [0x694598]
call fcn.0052dd50
cmp dword [ebp - 0x18], 0
je case.0x51038b.5039
mov edx, dword [ebp - 0x76]
mov eax, dword [0x694598]
call fcn.0052c1b8
mov esi, eax
test esi, esi
je case.0x51038b.5039
mov edx, 0xff
mov eax, dword [ebp - 0x1c]
call fcn.0040a1d0
mov ecx, eax
mov edx, dword [ebp - 0x18]
mov eax, esi
call fcn.0059d84c
jmp case.0x51038b.5039
mov ebx, dword [ebp - 0xc]
test ebx, ebx
je 0x5116b2
sub ebx, 4
mov ebx, dword [ebx]
push 0x402d5555
push 0x55555555
call fcn.00488758
cmp ebx, eax
jle 0x51171c
mov ebx, dword [ebp - 0xc]
test ebx, ebx
je 0x5116d1
sub ebx, 4
mov ebx, dword [ebx]
lea eax, [ebp - 0x10]
push eax
push 0x402d5555
push 0x55555555
call fcn.00488758
mov edx, eax
inc edx
mov ecx, ebx
mov eax, dword [ebp - 0xc]
call fcn.00405660
lea edx, [ebp - 0x18]
mov eax, dword [ebp - 0x10]
call fcn.004adf90
push 0
lea eax, [ebp - 0x1c]
push eax
mov byte [ebp - 0x230], 0x2f
lea ecx, [ebp - 0x230]
lea edx, [ebp - 0x18]
mov eax, dword [ebp - 0x18]
call fcn.00488aec
jmp 0x511724
lea eax, [ebp - 0x18]
call fcn.00405158
lea edx, [ebp - 0x81]
mov ecx, 0xb
mov eax, dword [ebp - 0xc]
call fcn.004ae020
mov eax, dword [ebp - 0x70]
push eax
mov eax, dword [ebp - 0x6c]
push eax
mov eax, dword [ebp - 0x68]
push eax
mov eax, dword [ebp - 0x81]
push eax
mov eax, dword [ebp - 0x7d]
push eax
push 0
movzx eax, byte [ebp - 0x79]
push eax
movzx eax, byte [ebp - 0x78]
push eax
movzx eax, byte [ebp - 0x77]
push eax
mov ecx, dword [ebp - 0x76]
mov edx, 0x138c
mov eax, dword [0x694598]
call fcn.0052dd50
cmp dword [ebp - 0x18], 0
je case.0x51038b.5039
mov edx, dword [ebp - 0x76]
mov eax, dword [0x694598]
call fcn.0052c1b8
mov esi, eax
test esi, esi
je case.0x51038b.5039
mov edx, 0xff
mov eax, dword [ebp - 0x1c]
call fcn.0040a1d0
mov ecx, eax
mov edx, dword [ebp - 0x18]
mov eax, esi
call fcn.0059d84c
jmp case.0x51038b.5039
mov eax, dword [0x688a9c]
mov eax, dword [eax]
mov eax, dword [eax + 4]
cmp eax, dword [ebp - 0x76]
je case.0x51038b.5039
mov eax, dword [ebp - 0x70]
push eax
mov eax, dword [ebp - 0x6c]
push eax
push 0
push 0
push 0
push 0
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
movzx edx, word [ebp - 0x72]
mov ecx, dword [ebp - 0x76]
mov eax, dword [0x694598]
call fcn.0052dd50
jmp case.0x51038b.5039
mov ebx, dword [ebp - 0xc]
test ebx, ebx
je 0x5117fb
sub ebx, 4
mov ebx, dword [ebx]
push 0x402d5555
push 0x55555555
call fcn.00488758
cmp ebx, eax
jle 0x511865
mov ebx, dword [ebp - 0xc]
test ebx, ebx
je 0x51181a
sub ebx, 4
mov ebx, dword [ebx]
lea eax, [ebp - 0x10]
push eax
push 0x402d5555
push 0x55555555
call fcn.00488758
mov edx, eax
inc edx
mov ecx, ebx
mov eax, dword [ebp - 0xc]
call fcn.00405660
lea edx, [ebp - 0x18]
mov eax, dword [ebp - 0x10]
call fcn.004adf90
push 0
lea eax, [ebp - 0x1c]
push eax
mov byte [ebp - 0x230], 0x2f
lea ecx, [ebp - 0x230]
lea edx, [ebp - 0x18]
mov eax, dword [ebp - 0x18]
call fcn.00488aec
jmp 0x51186d
lea eax, [ebp - 0x18]
call fcn.00405158
lea edx, [ebp - 0x81]
mov ecx, 0xb
mov eax, dword [ebp - 0xc]
call fcn.004ae020
mov eax, dword [0x688a9c]
mov eax, dword [eax]
mov eax, dword [eax + 4]
cmp eax, dword [ebp - 0x76]
je 0x5118c4
movzx eax, word [ebp - 0x6c]
push eax
movzx eax, word [ebp - 0x68]
push eax
mov eax, dword [ebp - 0x81]
push eax
mov eax, dword [ebp - 0x7d]
push eax
movzx eax, byte [ebp - 0x79]
push eax
movzx eax, byte [ebp - 0x78]
push eax
movzx eax, byte [ebp - 0x77]
push eax
movzx ecx, word [ebp - 0x70]
mov edx, dword [ebp - 0x76]
mov eax, dword [0x694598]
call fcn.0052c950
mov eax, dword [ebp - 0x70]
push eax
mov eax, dword [ebp - 0x6c]
push eax
mov eax, dword [ebp - 0x68]
push eax
mov eax, dword [ebp - 0x81]
push eax
mov eax, dword [ebp - 0x7d]
push eax
push 0
movzx eax, byte [ebp - 0x79]
push eax
movzx eax, byte [ebp - 0x78]
push eax
movzx eax, byte [ebp - 0x77]
push eax
movzx edx, word [ebp - 0x72]
mov ecx, dword [ebp - 0x76]
mov eax, dword [0x694598]
call fcn.0052dd50
cmp dword [ebp - 0x18], 0
je case.0x51038b.5039
mov edx, dword [ebp - 0x76]
mov eax, dword [0x694598]
call fcn.0052c1b8
mov esi, eax
test esi, esi
je case.0x51038b.5039
mov edx, 0xff
mov eax, dword [ebp - 0x1c]
call fcn.0040a1d0
mov ecx, eax
mov edx, dword [ebp - 0x18]
mov eax, esi
call fcn.0059d84c
jmp case.0x51038b.5039
lea edx, [ebp - 0x81]
mov ecx, 0xb
mov eax, dword [ebp - 0xc]
call fcn.004ae020
mov eax, dword [0x688a9c]
mov eax, dword [eax]
mov eax, dword [eax + 4]
cmp eax, dword [ebp - 0x76]
jne 0x511986
cmp word [ebp - 0x72], 0x1389
je 0x511986
cmp word [ebp - 0x72], 0x14af
je 0x511986
cmp word [ebp - 0x72], 0x14ea
je 0x511986
cmp word [ebp - 0x72], 0x138a
je 0x511986
cmp word [ebp - 0x72], 0x14eb
jne 0x5119bf
mov eax, dword [ebp - 0x70]
push eax
mov eax, dword [ebp - 0x6c]
push eax
mov eax, dword [ebp - 0x68]
push eax
mov eax, dword [ebp - 0x81]
push eax
mov eax, dword [ebp - 0x7d]
push eax
push 0
movzx eax, byte [ebp - 0x79]
push eax
movzx eax, byte [ebp - 0x78]
push eax
movzx eax, byte [ebp - 0x77]
push eax
movzx edx, word [ebp - 0x72]
mov ecx, dword [ebp - 0x76]
mov eax, dword [0x694598]
call fcn.0052dd50
cmp word [ebp - 0x72], 0x1389
je 0x5119d3
cmp word [ebp - 0x72], 0x14af
jne case.0x51038b.5039
call sub.kernel32.dll_GetTickCount
mov edx, dword [0x688da8]
mov dword [edx], eax
jmp case.0x51038b.5039
lea edx, [ebp - 0x81]
mov ecx, 0xb
mov eax, dword [ebp - 0xc]
call fcn.004ae020
mov eax, dword [0x688a9c]
mov eax, dword [eax]
mov eax, dword [eax + 4]
cmp eax, dword [ebp - 0x76]
je case.0x51038b.5039
mov eax, dword [ebp - 0x70]
push eax
mov eax, dword [ebp - 0x6c]
push eax
mov eax, dword [ebp - 0x68]
push eax
mov eax, dword [ebp - 0x81]
push eax
mov eax, dword [ebp - 0x7d]
push eax
push 0
movzx eax, byte [ebp - 0x79]
push eax
movzx eax, byte [ebp - 0x78]
push eax
movzx eax, byte [ebp - 0x77]
push eax
movzx edx, word [ebp - 0x72]
mov ecx, dword [ebp - 0x76]
mov eax, dword [0x694598]
call fcn.0052dd50
jmp case.0x51038b.5039
mov eax, edi
call fcn.0050d838
lea edx, [ebp - 0x81]
mov ecx, 0xb
mov eax, dword [ebp - 0xc]
call fcn.004ae020
mov eax, dword [ebp - 0x70]
push eax
mov eax, dword [ebp - 0x6c]
push eax
mov eax, dword [ebp - 0x68]
push eax
mov eax, dword [ebp - 0x81]
push eax
mov eax, dword [ebp - 0x7d]
push eax
push 0
movzx eax, byte [ebp - 0x79]
push eax
movzx eax, byte [ebp - 0x78]
push eax
movzx eax, byte [ebp - 0x77]
push eax
mov ecx, dword [ebp - 0x76]
mov edx, 0x138d
mov eax, dword [0x694598]
call fcn.0052dd50
jmp case.0x51038b.5039
lea edx, [ebp - 0x81]
mov ecx, 0xb
mov eax, dword [ebp - 0xc]
call fcn.004ae020
mov eax, dword [0x688a9c]
mov eax, dword [eax]
mov eax, dword [eax + 4]
cmp eax, dword [ebp - 0x76]
je case.0x51038b.5039
mov edx, dword [ebp - 0x76]
mov eax, dword [0x694598]
call fcn.0052c1b8
mov esi, eax
test esi, esi
je case.0x51038b.5039
mov eax, dword [ebp - 0x6c]
push eax
mov eax, dword [ebp - 0x68]
push eax
push 0
push 0
push 0
push 0
mov ecx, dword [ebp - 0x70]
mov dx, 0x138f
mov eax, esi
call fcn.0059c908
jmp case.0x51038b.5039
mov edx, dword [ebp - 0x76]
mov eax, dword [0x694598]
call fcn.0052c1b8
mov esi, eax
test esi, esi
je case.0x51038b.5039
movzx edx, word [ebp - 0x70]
movzx eax, word [ebp - 0x6c]
shl eax, 0x10
or edx, eax
mov ecx, dword [ebp - 0x68]
mov eax, esi
mov si, 0xfff8
call fcn.00404528
jmp case.0x51038b.5039
lea edx, [ebp - 0x81]
mov ecx, 0xb
mov eax, dword [ebp - 0xc]
call fcn.004ae020
mov eax, dword [0x688a9c]
mov eax, dword [eax]
mov eax, dword [eax + 4]
cmp eax, dword [ebp - 0x76]
je case.0x51038b.5039
mov edx, dword [ebp - 0x76]
mov eax, dword [0x694598]
call fcn.0052c1b8
mov esi, eax
test esi, esi
je case.0x51038b.5039
mov eax, dword [ebp - 0x6c]
push eax
mov eax, dword [ebp - 0x68]
push eax
push 0
push 0
push 0
push 0
mov ecx, dword [ebp - 0x70]
mov dx, 0x138f
mov eax, esi
call fcn.0059c908
jmp case.0x51038b.5039
mov eax, dword [0x688a9c]
mov eax, dword [eax]
mov eax, dword [eax + 4]
cmp eax, dword [ebp - 0x76]
je case.0x51038b.5039
mov edx, dword [ebp - 0x76]
mov eax, dword [0x694598]
call fcn.0052c1b8
mov esi, eax
test esi, esi
je case.0x51038b.5039
mov eax, dword [ebp - 0x6c]
push eax
movzx eax, byte [ebp - 0x68]
push eax
push 0
movzx eax, word [ebp - 0x68]
shr eax, 8
movzx eax, al
push eax
push 0
push 0
mov ecx, dword [ebp - 0x70]
movzx edx, word [ebp - 0x72]
mov eax, esi
call fcn.0059c908
cmp word [ebp - 0x72], 0x1392
jne case.0x51038b.5039
cmp dword [ebp - 0xc], 0
je case.0x51038b.5039
mov byte [esi + 0x174], 1
jmp case.0x51038b.5039
lea edx, [ebp - 0x30]
mov ecx, 8
mov eax, dword [ebp - 0xc]
call fcn.004ae020
mov edx, dword [ebp - 0x76]
mov eax, dword [0x694598]
call fcn.0052c1b8
mov esi, eax
test esi, esi
je case.0x51038b.5039
mov eax, dword [ebp - 0x6c]
push eax
mov eax, dword [ebp - 0x68]
push eax
push 0
push 0
push 0
push 0
mov ecx, dword [ebp - 0x70]
movzx edx, word [ebp - 0x72]
mov eax, esi
call fcn.0059c908
movzx eax, word [ebp - 0x30]
mov dword [esi + 0x15c], eax
movzx eax, word [ebp - 0x2e]
mov dword [esi + 0x160], eax
movzx eax, word [ebp - 0x2c]
movzx edx, word [ebp - 0x2a]
shl edx, 0x10
or eax, edx
mov dword [esi + 0x164], eax
jmp case.0x51038b.5039
lea edx, [ebp - 0x91]
mov ecx, 0x10
mov eax, dword [ebp - 0xc]
call fcn.004ae020
mov edx, dword [ebp - 0x76]
mov eax, dword [0x694598]
call fcn.0052c1b8
mov esi, eax
test esi, esi
je case.0x51038b.5039
mov eax, dword [ebp - 0x6c]
push eax
mov eax, dword [ebp - 0x68]
push eax
push 0
push 0
push 0
push 0
mov ecx, dword [ebp - 0x70]
movzx edx, word [ebp - 0x72]
mov eax, esi
call fcn.0059c908
mov eax, dword [ebp - 0x91]
mov dword [esi + 0x15c], eax
mov eax, dword [ebp - 0x8d]
mov dword [esi + 0x160], eax
mov eax, dword [ebp - 0x89]
mov dword [esi + 0x164], eax
mov eax, dword [ebp - 0x85]
mov dword [esi + 0x16c], eax
jmp case.0x51038b.5039
mov eax, dword [ebp - 0x70]
push eax
mov eax, dword [ebp - 0x6c]
push eax
xor edx, edx
mov eax, dword [ebp - 0xc]
call fcn.0040a1d0
push eax
mov ecx, dword [ebp - 0x68]
mov edx, dword [ebp - 0x76]
mov eax, edi
call fcn.00504c9c
jmp case.0x51038b.5039
lea edx, [ebp - 0x38]
mov ecx, 4
mov eax, dword [ebp - 0xc]
call fcn.004ae020
movzx eax, word [ebp - 0x68]
shr eax, 8
movzx eax, al
push eax
mov eax, dword [ebp - 0x70]
push eax
mov eax, dword [ebp - 0x6c]
push eax
mov eax, dword [ebp - 0x38]
push eax
movzx ecx, byte [ebp - 0x68]
mov edx, dword [ebp - 0x76]
mov eax, edi
call fcn.00504d24
jmp case.0x51038b.5039
mov edx, dword [ebp - 0x76]
mov eax, edi
call fcn.00504d80
jmp case.0x51038b.5039
mov eax, dword [0x688a9c]
cmp dword [eax], 0
je case.0x51038b.5039
movzx eax, word [ebp - 0x76]
call fcn.0057bbf0
jmp case.0x51038b.5039
cmp dword [ebp - 0x68], 1
jne 0x511d9a
mov eax, dword [0x688570]
mov edx, dword [ebp - 0x76]
mov dword [eax], edx
jmp case.0x51038b.5039
cmp dword [ebp - 0x68], 2
jne 0x511daf
mov eax, dword [0x688fb0]
mov edx, dword [ebp - 0x76]
mov dword [eax], edx
jmp case.0x51038b.5039
mov eax, dword [0x6891b0]
mov edx, dword [ebp - 0x76]
mov dword [eax], edx
jmp case.0x51038b.5039
cmp dword [ebp - 0x68], 1
jne 0x511e04
push 0x46
push 0
push 0
lea edx, [ebp - 0x444]
mov eax, dword [ebp - 0xc]
call fcn.004adf90
mov edx, dword [ebp - 0x444]
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
call fcn.00553480
mov eax, dword [0x688900]
mov eax, dword [eax]
mov byte [eax + 0x4486], 0
jmp case.0x51038b.5039
mov eax, dword [0x688900]
mov eax, dword [eax]
mov byte [eax + 0x4486], 0
mov eax, dword [0x688900]
mov eax, dword [eax]
mov edx, dword [ebp - 0x6c]
mov dword [eax + 0x462c], edx
mov eax, dword [0x688900]
mov eax, dword [eax]
mov edx, dword [ebp - 0x70]
mov dword [eax + 0x4630], edx
cmp dword [ebp - 0xc], 0
je 0x511e57
mov eax, dword [0x688900]
mov eax, dword [eax]
lea edx, [eax + 0x4487]
mov ecx, 0x1a4
mov eax, dword [ebp - 0xc]
call fcn.004ae020
jmp case.0x51038b.5039
mov eax, dword [0x688900]
mov eax, dword [eax]
add eax, 0x4487
xor ecx, ecx
mov edx, 0x1a4
call fcn.00403a7c
jmp case.0x51038b.5039
mov eax, dword [0x688a9c]
mov eax, dword [eax]
mov edx, dword [ebp - 0x76]
mov dword [eax + 0xb8], edx
movzx eax, word [ebp - 0x70]
movzx edx, word [ebp - 0x6c]
shl edx, 0x10
or eax, edx
mov edx, dword [0x6889a0]
mov dword [edx], eax
mov eax, dword [0x688900]
mov eax, dword [eax]
mov ecx, dword [ebp - 0xc]
mov edx, dword [ebp - 0x68]
call fcn.004de6d0
jmp case.0x51038b.5039
mov eax, dword [0x688a9c]
mov eax, dword [eax]
mov edx, dword [ebp - 0x76]
mov dword [eax + 0xb8], edx
lea edx, [ebp - 0x448]
mov eax, dword [ebp - 0xc]
call fcn.004adf90
mov ecx, dword [ebp - 0x448]
mov eax, dword [0x6884f8]
mov eax, dword [eax]
mov edx, dword [ebp - 0x68]
call fcn.004f95bc
jmp case.0x51038b.5039
mov eax, dword [0x688a9c]
mov eax, dword [eax]
mov edx, dword [ebp - 0x76]
mov dword [eax + 0xb8], edx
movzx eax, word [ebp - 0x70]
movzx edx, word [ebp - 0x6c]
shl edx, 0x10
or eax, edx
mov edx, dword [0x688a9c]
mov edx, dword [edx]
mov dword [edx + 0xbc], eax
lea edx, [ebp - 0x44c]
mov eax, dword [ebp - 0xc]
call fcn.004adf90
mov ecx, dword [ebp - 0x44c]
mov eax, dword [0x6884f8]
mov eax, dword [eax]
mov edx, dword [ebp - 0x68]
call fcn.004fb1fc
jmp case.0x51038b.5039
mov eax, dword [0x688a9c]
mov eax, dword [eax]
mov edx, dword [ebp - 0x76]
mov dword [eax + 0xb8], edx
movzx eax, word [ebp - 0x70]
movzx edx, word [ebp - 0x6c]
shl edx, 0x10
or eax, edx
mov edx, dword [0x6889a0]
mov dword [edx], eax
mov eax, dword [ebp - 0xc]
push eax
mov eax, dword [0x688900]
mov eax, dword [eax]
mov ecx, 1
mov edx, dword [ebp - 0x68]
call fcn.004de100
jmp case.0x51038b.5039
mov eax, dword [0x688a9c]
mov eax, dword [eax]
mov edx, dword [ebp - 0x76]
mov dword [eax + 0xb8], edx
movzx eax, word [ebp - 0x70]
movzx edx, word [ebp - 0x6c]
shl edx, 0x10
or eax, edx
mov edx, dword [0x6889a0]
mov dword [edx], eax
mov eax, dword [ebp - 0xc]
push eax
mov eax, dword [0x688900]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x68]
mov edx, 0xfffffff8
call fcn.004de100
jmp case.0x51038b.5039
mov eax, dword [0x6884f0]
mov byte [eax + 2], 0
cmp dword [ebp - 0x68], 1
jne case.0x51038b.5039
cmp dword [ebp - 0x76], 0
jle 0x511ffd
mov eax, dword [0x6884f0]
movzx eax, word [eax + 0xa5]
push eax
mov edx, dword [0x6884f0]
mov edx, dword [edx + 0x97]
mov ecx, dword [ebp - 0x76]
mov eax, edi
call fcn.0051b330
jmp 0x51201a
mov edx, dword [0x6884f0]
mov edx, dword [edx + 0x97]
mov eax, dword [0x6884f0]
movzx eax, word [eax + 0x9b]
call fcn.005b1dac
lea ecx, [ebp - 0x226]
mov edx, dword [ebp - 0xc]
mov eax, edi
call fcn.0050e52c
lea eax, [ebp - 0x226]
call fcn.005b1b7c
call sub.kernel32.dll_GetTickCount
add eax, 0x5dc
mov edx, dword [0x689150]
mov edx, dword [edx]
mov dword [edx + 0x218c], eax
mov eax, dword [0x689150]
mov eax, dword [eax]
mov edx, dword [ebp - 0x226]
mov dword [eax + 0x2190], edx
jmp case.0x51038b.5039
mov eax, dword [0x688900]
mov eax, dword [eax]
mov ecx, dword [ebp - 0xc]
mov edx, dword [ebp - 0x68]
call fcn.004dea80
jmp case.0x51038b.5039
mov eax, dword [0x688da0]
mov byte [eax], 0
mov eax, dword [0x68903c]
mov byte [eax], 0
mov eax, dword [0x688be4]
mov byte [eax], 0
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x517eac
call fcn.00553480
mov eax, edi
call fcn.00462e3c
jmp case.0x51038b.5039
lea edx, [ebp - 0x81]
mov ecx, 0xb
mov eax, dword [ebp - 0xc]
call fcn.004ae020
mov edx, dword [ebp - 0x76]
mov eax, dword [0x694598]
call fcn.0052c1b8
mov esi, eax
test esi, esi
je 0x512149
movzx eax, byte [ebp - 0x79]
mov byte [esi + 0x1a8], al
movzx eax, byte [ebp - 0x78]
mov byte [esi + 0x23c], al
movzx eax, byte [ebp - 0x77]
mov byte [esi + 0x1e], al
mov eax, dword [ebp - 0x6c]
push eax
mov eax, dword [ebp - 0x68]
push eax
mov eax, dword [ebp - 0x81]
push eax
mov eax, dword [ebp - 0x7d]
push eax
push 0
push 0
mov ecx, dword [ebp - 0x70]
movzx edx, word [ebp - 0x72]
mov eax, esi
call fcn.0059c908
xor eax, eax
mov dword [esi + 0x93], eax
cmp dword [esi + 0xe8], 0
je case.0x51038b.5039
mov eax, dword [esi + 0xe8]
xor edx, edx
mov dword [eax + 0x16], edx
jmp case.0x51038b.5039
mov eax, dword [ebp - 0x70]
push eax
mov eax, dword [ebp - 0x6c]
push eax
mov eax, dword [ebp - 0x68]
push eax
mov eax, dword [ebp - 0x81]
push eax
mov eax, dword [ebp - 0x7d]
push eax
push 0
movzx eax, byte [ebp - 0x79]
push eax
movzx eax, byte [ebp - 0x78]
push eax
movzx eax, byte [ebp - 0x77]
push eax
mov ecx, dword [ebp - 0x76]
mov edx, 0x13a3
mov eax, dword [0x694598]
call fcn.0052dd50
jmp case.0x51038b.5039
lea edx, [ebp - 0x81]
mov ecx, 0xb
mov eax, dword [ebp - 0xc]
call fcn.004ae020
mov eax, dword [ebp - 0x70]
push eax
mov eax, dword [ebp - 0x6c]
push eax
mov eax, dword [ebp - 0x68]
push eax
mov eax, dword [ebp - 0x81]
push eax
mov eax, dword [ebp - 0x7d]
push eax
push 0
movzx eax, byte [ebp - 0x79]
push eax
movzx eax, byte [ebp - 0x78]
push eax
movzx eax, byte [ebp - 0x77]
push eax
mov ecx, dword [ebp - 0x76]
mov edx, 0x13a4
mov eax, dword [0x694598]
call fcn.0052dd50
jmp case.0x51038b.5039
cmp dword [ebp - 0x68], 0
mov eax, dword [0x688894]
sete byte [eax]
push 0
lea eax, [ebp - 0x10]
push eax
mov byte [ebp - 0x230], 0x2f
lea ecx, [ebp - 0x230]
lea edx, [ebp - 0xc]
mov eax, dword [ebp - 0xc]
call fcn.00488aec
mov edx, dword [0x6885a4]
mov ecx, 0x3c
mov eax, dword [ebp - 0xc]
call fcn.004ae020
xor eax, eax
call fcn.005b1480
mov eax, dword [ebp - 0x76]
call fcn.00595324
lea edx, [ebp - 0x450]
mov eax, dword [ebp - 0x10]
call fcn.004adf90
mov edx, dword [ebp - 0x450]
lea eax, [ebp - 0x10]
call fcn.004051f0
push 0
lea eax, [ebp - 0x454]
push eax
mov byte [ebp - 0x230], 0x2f
lea ecx, [ebp - 0x230]
lea edx, [ebp - 0x1c]
mov eax, dword [ebp - 0x10]
call fcn.00488aec
mov edx, dword [ebp - 0x454]
lea eax, [ebp - 0x10]
call fcn.004051f0
cmp dword [ebp - 0x1c], 0
je 0x512284
mov eax, dword [0x688ae8]
mov edx, dword [ebp - 0x1c]
call fcn.004051ac
push 0
lea eax, [ebp - 0x458]
push eax
mov byte [ebp - 0x230], 0x2f
lea ecx, [ebp - 0x230]
lea edx, [ebp - 0x1c]
mov eax, dword [ebp - 0x10]
call fcn.00488aec
mov edx, dword [ebp - 0x458]
lea eax, [ebp - 0x10]
call fcn.004051f0
cmp dword [ebp - 0x1c], 0
je 0x5122c6
mov eax, dword [0x688b54]
mov edx, dword [ebp - 0x1c]
call fcn.004051ac
push 0
lea eax, [ebp - 0x45c]
push eax
mov byte [ebp - 0x230], 0x2f
lea ecx, [ebp - 0x230]
lea edx, [ebp - 0x1c]
mov eax, dword [ebp - 0x10]
call fcn.00488aec
mov edx, dword [ebp - 0x45c]
lea eax, [ebp - 0x10]
call fcn.004051f0
cmp dword [ebp - 0x1c], 0
je 0x512308
mov eax, dword [0x688e44]
mov edx, dword [ebp - 0x1c]
call fcn.004051ac
push 0
lea eax, [ebp - 0x460]
push eax
mov byte [ebp - 0x230], 0x2f
lea ecx, [ebp - 0x230]
lea edx, [ebp - 0x1c]
mov eax, dword [ebp - 0x10]
call fcn.00488aec
mov edx, dword [ebp - 0x460]
lea eax, [ebp - 0x10]
call fcn.004051f0
cmp dword [ebp - 0x1c], 0
je 0x51234a
mov eax, dword [0x688c0c]
mov edx, dword [ebp - 0x1c]
call fcn.004051ac
push 0
lea eax, [ebp - 0x464]
push eax
mov byte [ebp - 0x230], 0x2f
lea ecx, [ebp - 0x230]
lea edx, [ebp - 0x1c]
mov eax, dword [ebp - 0x10]
call fcn.00488aec
mov edx, dword [ebp - 0x464]
lea eax, [ebp - 0x10]
call fcn.004051f0
cmp dword [ebp - 0x1c], 0
je 0x51238c
mov eax, dword [0x688dd8]
mov edx, dword [ebp - 0x1c]
call fcn.004051ac
push 0
lea eax, [ebp - 0x468]
push eax
mov byte [ebp - 0x230], 0x2f
lea ecx, [ebp - 0x230]
lea edx, [ebp - 0x1c]
mov eax, dword [ebp - 0x10]
call fcn.00488aec
mov edx, dword [ebp - 0x468]
lea eax, [ebp - 0x10]
call fcn.004051f0
cmp dword [ebp - 0x1c], 0
je 0x5123ce
mov eax, dword [0x6888f0]
mov edx, dword [ebp - 0x1c]
call fcn.004051ac
push 0
lea eax, [ebp - 0x46c]
push eax
mov byte [ebp - 0x230], 0x2f
lea ecx, [ebp - 0x230]
lea edx, [ebp - 0x1c]
mov eax, dword [ebp - 0x10]
call fcn.00488aec
mov edx, dword [ebp - 0x46c]
lea eax, [ebp - 0x10]
call fcn.004051f0
cmp dword [ebp - 0x1c], 0
je 0x512410
mov eax, dword [0x688298]
mov edx, dword [ebp - 0x1c]
call fcn.004051ac
push 0
lea eax, [ebp - 0x470]
push eax
mov byte [ebp - 0x230], 0x2f
lea ecx, [ebp - 0x230]
lea edx, [ebp - 0x1c]
mov eax, dword [ebp - 0x10]
call fcn.00488aec
mov edx, dword [ebp - 0x470]
lea eax, [ebp - 0x10]
call fcn.004051f0
cmp dword [ebp - 0x1c], 0
je 0x512452
mov eax, dword [0x6884bc]
mov edx, dword [ebp - 0x1c]
call fcn.004051ac
push 0
lea eax, [ebp - 0x474]
push eax
mov byte [ebp - 0x230], 0x2f
lea ecx, [ebp - 0x230]
lea edx, [ebp - 0x1c]
mov eax, dword [ebp - 0x10]
call fcn.00488aec
mov edx, dword [ebp - 0x474]
lea eax, [ebp - 0x10]
call fcn.004051f0
cmp dword [ebp - 0x1c], 0
je case.0x51038b.5039
mov eax, dword [0x689048]
mov edx, dword [ebp - 0x1c]
call fcn.004051ac
jmp case.0x51038b.5039
lea edx, [ebp - 0x81]
mov ecx, 0xb
mov eax, dword [ebp - 0xc]
call fcn.004ae020
mov eax, dword [ebp - 0x70]
push eax
mov eax, dword [ebp - 0x6c]
push eax
mov eax, dword [ebp - 0x68]
push eax
mov eax, dword [ebp - 0x81]
push eax
mov eax, dword [ebp - 0x7d]
push eax
push 0
movzx eax, byte [ebp - 0x79]
push eax
movzx eax, byte [ebp - 0x78]
push eax
movzx eax, byte [ebp - 0x77]
push eax
mov ecx, dword [ebp - 0x76]
mov edx, 0x139e
mov eax, dword [0x694598]
call fcn.0052dd50
jmp case.0x51038b.5039
lea edx, [ebp - 0x76]
mov ecx, dword [ebp - 0xc]
mov eax, edi
call fcn.00522840
mov eax, dword [ebp - 0x76]
call fcn.0059549c
jmp case.0x51038b.5039
mov eax, dword [0x688a9c]
cmp dword [eax], 0
je case.0x51038b.5039
mov eax, dword [0x688a9c]
mov eax, dword [eax]
mov edx, dword [ebp - 0x76]
mov dword [eax + 0xb8], edx
mov eax, dword [0x688a9c]
mov eax, dword [eax]
movzx edx, byte [ebp - 0x70]
mov byte [eax + 0x1e], dl
movzx eax, word [ebp - 0x6c]
movzx edx, word [ebp - 0x68]
shl edx, 0x10
or eax, edx
mov edx, dword [0x6889a0]
mov dword [edx], eax
mov eax, dword [0x688a9c]
mov eax, dword [eax]
lea edx, [eax + 0x59]
mov ecx, 0x5e
mov eax, dword [ebp - 0xc]
call fcn.004ae020
jmp case.0x51038b.5039
mov eax, dword [0x688a9c]
cmp dword [eax], 0
je case.0x51038b.5039
lea edx, [ebp - 0x9d]
mov ecx, 0xc
mov eax, dword [ebp - 0xc]
call fcn.004ae020
movzx eax, byte [ebp - 0x70]
mov edx, dword [0x688264]
mov dword [edx], eax
movzx eax, word [ebp - 0x70]
shr eax, 8
movzx eax, al
mov edx, dword [0x6888d4]
mov dword [edx], eax
movzx eax, byte [ebp - 0x6c]
mov edx, dword [0x6889ec]
mov dword [edx], eax
movzx eax, word [ebp - 0x6c]
shr eax, 8
movzx eax, al
mov edx, dword [0x6889e8]
mov dword [edx], eax
movzx eax, byte [ebp - 0x68]
mov edx, dword [0x688aa4]
mov dword [edx], eax
movzx eax, word [ebp - 0x68]
shr eax, 8
movzx eax, al
mov edx, dword [0x688a54]
mov dword [edx], eax
movzx eax, byte [ebp - 0x76]
mov edx, dword [0x6886e8]
mov dword [edx], eax
movzx eax, word [ebp - 0x76]
shr eax, 8
mov edx, dword [0x688a9c]
mov edx, dword [edx]
mov byte [edx + 0x23c], al
mov eax, dword [ebp - 0x76]
shr eax, 0x10
mov edx, dword [0x68913c]
mov byte [edx], al
mov eax, dword [ebp - 0x76]
shr eax, 0x10
movzx eax, ax
shr eax, 8
mov edx, dword [0x688fe0]
mov byte [edx], al
mov eax, dword [0x688488]
movzx edx, byte [ebp - 0x9d]
mov byte [eax], dl
movzx eax, word [ebp - 0x9d]
shr eax, 8
mov edx, dword [0x688a4c]
mov byte [edx], al
mov eax, dword [ebp - 0x9d]
shr eax, 0x10
movzx eax, al
mov edx, dword [0x688be0]
mov dword [edx], eax
mov eax, dword [0x689084]
mov edx, dword [ebp - 0x99]
mov dword [eax], edx
mov eax, dword [0x688cb0]
mov edx, dword [ebp - 0x95]
mov dword [eax], edx
jmp case.0x51038b.5039
mov eax, dword [0x688a9c]
cmp dword [eax], 0
je case.0x51038b.5039
movzx eax, byte [ebp - 0x70]
mov edx, dword [0x688870]
mov dword [edx], eax
movzx eax, word [ebp - 0x70]
shr eax, 8
movzx eax, al
mov edx, dword [0x688564]
mov dword [edx], eax
mov eax, dword [0x688da4]
mov edx, dword [ebp - 0x6c]
mov dword [eax], edx
jmp case.0x51038b.5039
mov eax, dword [0x689084]
mov edx, dword [ebp - 0x76]
mov dword [eax], edx
movzx eax, word [ebp - 0x6c]
movzx edx, word [ebp - 0x68]
shl edx, 0x10
or eax, edx
mov edx, dword [0x688cb0]
mov dword [edx], eax
jmp case.0x51038b.5039
lea edx, [ebp - 0x478]
mov eax, dword [ebp - 0xc]
call fcn.004adf90
mov edx, dword [ebp - 0x478]
mov eax, dword [0x688380]
call fcn.004051ac
jmp case.0x51038b.5039
lea edx, [ebp - 0x47c]
mov eax, dword [ebp - 0xc]
call fcn.004adf90
mov eax, dword [ebp - 0x47c]
push eax
mov ecx, dword [ebp - 0x76]
shr ecx, 0x10
movzx ecx, cx
movzx edx, word [ebp - 0x76]
mov eax, edi
call fcn.004fef10
jmp case.0x51038b.5039
cmp dword [ebp - 0x68], 2
jne 0x512788
mov eax, dword [0x68878c]
movzx edx, byte [ebp - 0x76]
mov byte [eax + 0xe9f], dl
push 1
push 0
push 0x517ef8
lea edx, [ebp - 0x484]
mov eax, dword [ebp - 0x76]
call fcn.0040a028
push dword [ebp - 0x484]
push 0x517f1c
lea eax, [ebp - 0x480]
mov edx, 3
call fcn.004054fc
mov edx, dword [ebp - 0x480]
mov ecx, 0xff00
mov eax, dword [0x69458c]
call fcn.0053ca7c
jmp case.0x51038b.5039
cmp dword [ebp - 0x68], 1
jne 0x51287e
mov eax, dword [0x68878c]
mov edx, dword [ebp - 0x76]
mov dword [eax + 0xe3f], edx
mov eax, dword [0x6885e4]
cmp byte [eax + 9], 0
je 0x512824
movzx eax, word [ebp - 0x70]
movzx edx, word [ebp - 0x6c]
shl edx, 0x10
or eax, edx
mov edx, dword [0x6885e4]
movzx edx, word [edx + 0xa]
cmp eax, edx
jbe case.0x51038b.5039
push 1
push 0
push 0x517f30
movzx eax, word [ebp - 0x70]
movzx edx, word [ebp - 0x6c]
shl edx, 0x10
or eax, edx
xor edx, edx
push edx
push eax
lea eax, [ebp - 0x48c]
call fcn.0040a114
push dword [ebp - 0x48c]
push 0x517f48
lea eax, [ebp - 0x488]
mov edx, 3
call fcn.004054fc
mov edx, dword [ebp - 0x488]
mov ecx, 0xff00
mov eax, dword [0x69458c]
call fcn.0053ca7c
jmp case.0x51038b.5039
push 1
push 0
push 0x517f30
movzx eax, word [ebp - 0x70]
movzx edx, word [ebp - 0x6c]
shl edx, 0x10
or eax, edx
xor edx, edx
push edx
push eax
lea eax, [ebp - 0x494]
call fcn.0040a114
push dword [ebp - 0x494]
push 0x517f48
lea eax, [ebp - 0x490]
mov edx, 3
call fcn.004054fc
mov edx, dword [ebp - 0x490]
mov ecx, 0xff00
mov eax, dword [0x69458c]
call fcn.0053ca7c
jmp case.0x51038b.5039
mov eax, dword [0x688a9c]
mov eax, dword [eax]
mov edx, dword [ebp - 0x76]
mov dword [eax + 0xa3], edx
mov eax, dword [0x6885e4]
cmp byte [eax + 9], 0
je 0x512912
movzx eax, word [ebp - 0x70]
movzx edx, word [ebp - 0x6c]
shl edx, 0x10
or eax, edx
mov edx, dword [0x6885e4]
movzx edx, word [edx + 0xa]
cmp eax, edx
jbe case.0x51038b.5039
push 1
push 0
push 0x517f30
movzx eax, word [ebp - 0x70]
movzx edx, word [ebp - 0x6c]
shl edx, 0x10
or eax, edx
xor edx, edx
push edx
push eax
lea eax, [ebp - 0x49c]
call fcn.0040a114
push dword [ebp - 0x49c]
push 0x517f64
lea eax, [ebp - 0x498]
mov edx, 3
call fcn.004054fc
mov edx, dword [ebp - 0x498]
mov ecx, 0xff00
mov eax, dword [0x69458c]
call fcn.0053ca7c
jmp case.0x51038b.5039
push 1
push 0
push 0x517f30
movzx eax, word [ebp - 0x70]
movzx edx, word [ebp - 0x6c]
shl edx, 0x10
or eax, edx
xor edx, edx
push edx
push eax
lea eax, [ebp - 0x4a4]
call fcn.0040a114
push dword [ebp - 0x4a4]
push 0x517f64
lea eax, [ebp - 0x4a0]
mov edx, 3
call fcn.004054fc
mov edx, dword [ebp - 0x4a0]
mov ecx, 0xff00
mov eax, dword [0x69458c]
call fcn.0053ca7c
jmp case.0x51038b.5039
cmp dword [ebp - 0x68], 4
jne 0x5129b9
push 1
push 0
push 0x517ef8
lea edx, [ebp - 0x4ac]
mov eax, dword [ebp - 0x76]
call fcn.0040a028
push dword [ebp - 0x4ac]
push 0x517f1c
lea eax, [ebp - 0x4a8]
mov edx, 3
call fcn.004054fc
mov edx, dword [ebp - 0x4a8]
mov ecx, 0xff00
mov eax, dword [0x69458c]
call fcn.0053ca7c
cmp dword [ebp - 0x68], 1
jne 0x512a14
push 1
push 0
push 0x517f30
movzx eax, word [ebp - 0x70]
movzx edx, word [ebp - 0x6c]
shl edx, 0x10
or eax, edx
xor edx, edx
push edx
push eax
lea eax, [ebp - 0x4b4]
call fcn.0040a114
push dword [ebp - 0x4b4]
push 0x517f48
lea eax, [ebp - 0x4b0]
mov edx, 3
call fcn.004054fc
mov edx, dword [ebp - 0x4b0]
mov ecx, 0xff00
mov eax, dword [0x69458c]
call fcn.0053ca7c
cmp dword [ebp - 0x68], 2
jne 0x512a6f
push 1
push 0
push 0x517f7c
movzx eax, word [ebp - 0x70]
movzx edx, word [ebp - 0x6c]
shl edx, 0x10
or eax, edx
xor edx, edx
push edx
push eax
lea eax, [ebp - 0x4bc]
call fcn.0040a114
push dword [ebp - 0x4bc]
push 0x517fa0
lea eax, [ebp - 0x4b8]
mov edx, 3
call fcn.004054fc
mov edx, dword [ebp - 0x4b8]
mov ecx, 0xff00
mov eax, dword [0x69458c]
call fcn.0053ca7c
cmp dword [ebp - 0x68], 3
jne case.0x51038b.5039
push 1
push 0
push 0x517fb0
movzx eax, word [ebp - 0x70]
movzx edx, word [ebp - 0x6c]
shl edx, 0x10
or eax, edx
xor edx, edx
push edx
push eax
lea eax, [ebp - 0x4c4]
call fcn.0040a114
push dword [ebp - 0x4c4]
push 0x517fa0
lea eax, [ebp - 0x4c0]
mov edx, 3
call fcn.004054fc
mov edx, dword [ebp - 0x4c0]
mov ecx, 0xff00
mov eax, dword [0x69458c]
call fcn.0053ca7c
jmp case.0x51038b.5039
mov eax, dword [0x688ce4]
movzx edx, word [ebp - 0x68]
mov word [eax], dx
mov eax, dword [0x688a9c]
mov eax, dword [eax]
movzx eax, word [eax + 0x59]
cmp eax, dword [ebp - 0x70]
je case.0x51038b.5039
mov eax, dword [0x688a9c]
mov eax, dword [eax]
movzx edx, word [ebp - 0x70]
mov word [eax + 0x59], dx
push 1
push 0
push 0x517fd4
mov eax, dword [ebp - 0x70]
xor edx, edx
push edx
push eax
lea eax, [ebp - 0x4cc]
call fcn.0040a114
push dword [ebp - 0x4cc]
push 0x517ff4
lea eax, [ebp - 0x4c8]
mov edx, 3
call fcn.004054fc
mov edx, dword [ebp - 0x4c8]
mov ecx, 0xff00
mov eax, dword [0x69458c]
call fcn.0053ca7c
mov eax, dword [0x694598]
call fcn.0052c57c
jmp case.0x51038b.5039
mov eax, dword [0x688e90]
mov byte [eax], 0
mov eax, dword [0x688ce4]
movzx edx, word [ebp - 0x68]
mov word [eax], dx
mov eax, dword [0x689098]
movzx edx, byte [ebp - 0x70]
mov byte [eax], dl
movzx eax, word [ebp - 0x70]
shr eax, 8
mov edx, dword [0x688bc8]
mov byte [edx], al
mov eax, dword [0x6885fc]
movzx edx, byte [ebp - 0x6c]
mov byte [eax], dl
movzx eax, word [ebp - 0x6c]
shr eax, 8
mov edx, dword [0x688340]
mov byte [edx], al
mov edx, dword [0x6886c4]
mov ecx, 0xa
mov eax, dword [ebp - 0xc]
call fcn.004ae020
jmp case.0x51038b.5039
mov edx, dword [ebp - 0x76]
mov eax, dword [0x694598]
call fcn.0052c1b8
mov esi, eax
test esi, esi
je 0x512bea
mov eax, dword [ebp - 0x70]
mov dword [esi + 0x93], eax
mov eax, dword [ebp - 0x6c]
mov dword [esi + 0x97], eax
mov eax, dword [ebp - 0x68]
mov dword [esi + 0x9b], eax
cmp dword [esi + 0xe8], 0
je case.0x51038b.5039
mov eax, dword [esi + 0xe8]
mov edx, dword [ebp - 0x70]
mov dword [eax + 0x16], edx
mov eax, dword [esi + 0xe8]
mov edx, dword [ebp - 0x6c]
mov dword [eax + 0x1a], edx
mov eax, dword [esi + 0xe8]
mov edx, dword [ebp - 0x68]
mov dword [eax + 0x1e], edx
mov eax, dword [esi + 0xe8]
mov eax, dword [eax + 0x1a]
mov edx, dword [esi + 0xe8]
cmp eax, dword [edx + 0x22]
jle case.0x51038b.5039
mov eax, dword [esi + 0xe8]
mov eax, dword [eax + 0x1a]
mov edx, dword [esi + 0xe8]
mov dword [edx + 0x22], eax
jmp case.0x51038b.5039
lea edx, [ebp - 0x91]
mov ecx, 0x10
mov eax, dword [ebp - 0xc]
call fcn.004ae020
mov edx, dword [ebp - 0x76]
mov eax, dword [0x694598]
call fcn.0052c1b8
mov esi, eax
test esi, esi
je case.0x51038b.5039
mov eax, dword [0x688a9c]
cmp esi, dword [eax]
jne 0x512c99
mov eax, dword [0x688a9c]
mov eax, dword [eax]
cmp byte [eax + 0x58], 0xf9
jne 0x512cab
call sub.kernel32.dll_GetTickCount
mov edx, dword [0x688230]
mov dword [edx], eax
jmp 0x512cab
mov eax, esi
call fcn.005a1508
test al, al
je 0x512cab
mov eax, esi
call fcn.005a1524
mov eax, dword [0x688a9c]
cmp esi, dword [eax]
je 0x512ce5
push 0
mov eax, dword [ebp - 0x68]
push eax
mov eax, dword [ebp - 0x91]
push eax
mov eax, dword [ebp - 0x8d]
push eax
push 0
mov eax, dword [ebp - 0x89]
push eax
movzx ecx, word [ebp - 0x85]
mov dx, 0x13a2
mov eax, esi
call fcn.0059c9e4
jmp 0x512cf7
mov eax, dword [ebp - 0x85]
shr eax, 0x10
mov edx, dword [0x68837c]
mov word [edx], ax
mov ecx, dword [ebp - 0x68]
mov edx, esi
mov eax, edi
call fcn.00503e4c
mov eax, dword [ebp - 0x70]
mov dword [esi + 0x93], eax
mov eax, dword [ebp - 0x6c]
mov dword [esi + 0x9b], eax
cmp dword [esi + 0xe8], 0
je case.0x51038b.5039
mov eax, dword [esi + 0xe8]
mov edx, dword [ebp - 0x70]
mov dword [eax + 0x16], edx
mov eax, dword [esi + 0xe8]
mov edx, dword [ebp - 0x6c]
mov dword [eax + 0x1e], edx
jmp case.0x51038b.5039
lea edx, [ebp - 0x4d0]
mov eax, dword [ebp - 0xc]
call fcn.004adf90
mov ecx, dword [ebp - 0x4d0]
lea edx, [ebp - 0x76]
mov eax, edi
call fcn.0051fcac
jmp case.0x51038b.5039
mov edx, dword [ebp - 0x76]
mov eax, dword [0x694598]
call fcn.0052c1b8
mov esi, eax
test esi, esi
je case.0x51038b.5039
lea edx, [ebp - 0x81]
mov ecx, 0xb
mov eax, dword [ebp - 0xc]
call fcn.004ae020
movzx eax, word [ebp - 0x70]
movzx edx, word [ebp - 0x6c]
shl edx, 0x10
or eax, edx
mov dword [esi + 0x19c], eax
mov eax, dword [ebp - 0x81]
mov dword [esi + 0x1a0], eax
mov eax, dword [ebp - 0x7d]
mov dword [esi + 0x1a4], eax
movzx eax, byte [ebp - 0x79]
mov byte [esi + 0x1a8], al
movzx eax, byte [ebp - 0x78]
mov byte [esi + 0x23c], al
movzx eax, byte [ebp - 0x77]
mov byte [esi + 0x1e], al
mov eax, dword [esi + 0x19c]
call fcn.005b2c94
jmp case.0x51038b.5039
mov edx, dword [ebp - 0x76]
mov eax, dword [0x694598]
call fcn.0052c1b8
mov esi, eax
test esi, esi
je case.0x51038b.5039
mov eax, dword [0x688a9c]
cmp esi, dword [eax]
je 0x512e11
mov eax, dword [ebp - 0x70]
mov dword [esi + 0x93], eax
mov eax, dword [ebp - 0x6c]
mov dword [esi + 0x9b], eax
cmp dword [esi + 0xe8], 0
je 0x512e32
mov eax, dword [esi + 0xe8]
mov edx, dword [ebp - 0x70]
mov dword [eax + 0x16], edx
mov eax, dword [esi + 0xe8]
mov edx, dword [ebp - 0x6c]
mov dword [eax + 0x1e], edx
mov byte [esi + 0x1ec], 1
jmp case.0x51038b.5039
mov edx, dword [ebp - 0x76]
mov eax, dword [0x694598]
call fcn.0052c1b8
mov esi, eax
test esi, esi
je case.0x51038b.5039
mov byte [esi + 0x1ec], 0
jmp case.0x51038b.5039
lea edx, [ebp - 0x76]
mov ecx, dword [ebp - 0xc]
mov eax, edi
call fcn.0051febc
jmp case.0x51038b.5039
mov edx, dword [ebp - 0x76]
mov eax, dword [0x694598]
call fcn.0052c1b8
mov esi, eax
test esi, esi
je case.0x51038b.5039
mov eax, dword [ebp - 0x70]
mov dword [esi + 0x93], eax
mov eax, dword [ebp - 0x6c]
mov dword [esi + 0x9b], eax
jmp case.0x51038b.5039
mov edx, dword [ebp - 0x76]
mov eax, dword [0x694598]
call fcn.0052c1b8
mov esi, eax
test esi, esi
je case.0x51038b.5039
mov eax, esi
mov edx, dword [0x599e94]
call fcn.004044b8
test al, al
je case.0x51038b.5039
mov eax, esi
call fcn.005a4d58
jmp case.0x51038b.5039
cmp byte [0x6842bc], 0
je 0x512f03
mov eax, dword [ebp - 0xc]
call fcn.004fd2cc
lea edx, [ebp - 0x4d4]
mov eax, dword [ebp - 0xc]
call fcn.004adf90
mov eax, dword [ebp - 0x4d4]
call fcn.004fd2cc
lea edx, [ebp - 0x4d8]
mov eax, dword [ebp - 0xc]
call fcn.004adf90
mov ecx, dword [ebp - 0x4d8]
lea edx, [ebp - 0x76]
mov eax, edi
call fcn.0051f11c
jmp case.0x51038b.5039
push 1
push 0
lea edx, [ebp - 0x4dc]
mov eax, dword [ebp - 0xc]
call fcn.004adf90
mov edx, dword [ebp - 0x4dc]
mov ecx, dword [ebp - 0x76]
mov eax, dword [0x69458c]
call fcn.0053ca7c
jmp case.0x51038b.5039
mov ecx, dword [ebp - 0xc]
lea edx, [ebp - 0x76]
mov eax, edi
call fcn.0051edf0
jmp case.0x51038b.5039
lea edx, [ebp - 0x1c]
mov eax, dword [ebp - 0xc]
call fcn.004adf90
mov edx, dword [ebp - 0x76]
mov eax, dword [0x694598]
call fcn.0052c1b8
mov esi, eax
test esi, esi
je case.0x51038b.5039
movzx eax, byte [ebp - 0x6c]
mov byte [esi + 0x23c], al
mov ecx, dword [ebp - 0x70]
mov edx, dword [ebp - 0x1c]
mov eax, esi
call fcn.0059d84c
jmp case.0x51038b.5039
mov edx, dword [ebp - 0x76]
mov eax, dword [0x694598]
call fcn.0052c1b8
mov esi, eax
test esi, esi
je case.0x51038b.5039
push 0
mov ecx, dword [ebp - 0x70]
xor edx, edx
mov eax, esi
mov si, 0xfffa
call fcn.00404528
jmp case.0x51038b.5039
mov eax, dword [0x688a9c]
mov eax, dword [eax]
mov eax, dword [eax + 4]
cmp eax, dword [ebp - 0x76]
je case.0x51038b.5039
mov eax, dword [ebp - 0x70]
push eax
mov eax, dword [ebp - 0x6c]
push eax
push 0
push 0
push 0
push 0
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
mov ecx, dword [ebp - 0x76]
mov edx, 0x13a0
mov eax, dword [0x694598]
call fcn.0052dd50
jmp case.0x51038b.5039
lea edx, [ebp - 0x91]
mov ecx, 0x10
mov eax, dword [ebp - 0xc]
call fcn.004ae020
mov edx, dword [ebp - 0x76]
mov eax, dword [0x694598]
call fcn.0052c1b8
mov esi, eax
test esi, esi
jne 0x513065
movzx eax, word [ebp - 0x6c]
push eax
movzx eax, word [ebp - 0x68]
push eax
mov eax, dword [ebp - 0x91]
push eax
mov eax, dword [ebp - 0x8d]
push eax
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
movzx ecx, word [ebp - 0x70]
mov edx, dword [ebp - 0x76]
mov eax, dword [0x694598]
call fcn.0052c950
mov esi, eax
mov eax, dword [ebp - 0x89]
mov dword [esi + 0x170], eax
mov eax, dword [ebp - 0x6c]
push eax
mov eax, dword [ebp - 0x68]
push eax
mov eax, dword [ebp - 0x91]
push eax
mov eax, dword [ebp - 0x8d]
push eax
push 0
push 0
mov ecx, dword [ebp - 0x70]
mov dx, 0x1397
mov eax, esi
call fcn.0059c908
jmp case.0x51038b.5039
mov eax, dword [ebp - 0x70]
push eax
mov eax, dword [ebp - 0x6c]
push eax
push 0
push 0
push 0
push 0
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
mov ecx, dword [ebp - 0x76]
mov edx, 0x1398
mov eax, dword [0x694598]
call fcn.0052dd50
jmp case.0x51038b.5039
movzx eax, word [ebp - 0x6c]
push eax
mov eax, dword [ebp - 0x68]
push eax
mov eax, dword [ebp - 0x70]
push eax
mov ecx, dword [ebp - 0x76]
mov dl, 1
mov eax, dword [0x53a614]
call fcn.0053a738
mov ebx, eax
xor eax, eax
mov dword [ebx + 0xc], eax
lea edx, [ebp - 0x4e0]
mov eax, dword [ebp - 0xc]
call fcn.004adf90
mov eax, dword [ebp - 0x4e0]
xor edx, edx
call fcn.0040a1d0
mov dword [ebx + 0x3c], eax
mov edx, ebx
mov eax, dword [0x6945a8]
call fcn.0053ada4
jmp case.0x51038b.5039
mov edx, dword [ebp - 0x76]
mov eax, dword [0x6945a8]
call fcn.0053adfc
jmp case.0x51038b.5039
mov ecx, dword [ebp - 0xc]
lea edx, [ebp - 0x76]
mov eax, edi
call fcn.0051ad94
jmp case.0x51038b.5039
lea edx, [ebp - 0x76]
mov eax, edi
call fcn.0051af4c
jmp case.0x51038b.5039
mov edx, dword [ebp - 0xc]
mov eax, edi
call fcn.0051b5a4
jmp case.0x51038b.5039
mov edx, dword [ebp - 0xc]
mov eax, edi
call fcn.0051b3b8
jmp case.0x51038b.5039
mov eax, dword [0x68908c]
add eax, 6
or edx, 0xffffffff
call fcn.005b17a0
mov eax, dword [0x68908c]
mov byte [eax + 8], 0
call fcn.005b1fcc
mov eax, dword [0x689150]
mov eax, dword [eax]
call fcn.0056adac
call fcn.005b2014
jmp case.0x51038b.5039
mov eax, dword [0x68908c]
mov eax, dword [eax]
sub eax, 3
jae 0x5131cf
mov eax, dword [0x68908c]
imul eax, dword [eax], 0x43
mov edx, dword [0x688620]
mov ecx, dword [0x68908c]
lea edi, [edx + eax*4]
lea esi, [ecx + 6]
mov ecx, 0x43
rep movsd dword es:[edi], dword [esi]
mov eax, dword [0x68908c]
mov byte [eax + 8], 0
call fcn.005b1fcc
mov eax, dword [0x689150]
mov eax, dword [eax]
call fcn.0056adac
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517ffc]
mov edx, 0x518008
call fcn.00553480
call fcn.005b2014
jmp case.0x51038b.5039
mov edx, dword [ebp - 0xc]
mov eax, edi
call fcn.0051b53c
jmp case.0x51038b.5039
mov eax, dword [ebp - 0x68]
sub eax, 3
jae 0x513245
imul eax, dword [ebp - 0x68], 0x43
mov edx, dword [0x688620]
mov ecx, dword [0x68908c]
lea edi, [edx + eax*4]
lea esi, [ecx + 6]
mov ecx, 0x43
rep movsd dword es:[edi], dword [esi]
mov eax, dword [0x68908c]
mov byte [eax + 8], 0
call fcn.005b1fcc
mov eax, dword [0x689150]
mov eax, dword [eax]
call fcn.0056adac
call fcn.005b2014
jmp case.0x51038b.5039
mov edx, dword [0x68908c]
mov edx, dword [edx]
mov eax, dword [0x68908c]
add eax, 6
call fcn.005b17a0
mov eax, dword [0x68908c]
mov byte [eax + 8], 0
call fcn.005b1fcc
mov eax, dword [0x689150]
mov eax, dword [eax]
call fcn.0056adac
call fcn.005b2014
jmp case.0x51038b.5039
mov edx, dword [ebp - 0xc]
mov eax, edi
call fcn.0051b15c
jmp case.0x51038b.5039
mov ecx, dword [ebp - 0x70]
mov edx, dword [ebp - 0x76]
mov eax, edi
call fcn.0051b248
jmp case.0x51038b.5039
mov edx, dword [ebp - 0xc]
mov eax, edi
call fcn.0051b250
jmp case.0x51038b.5039
mov eax, dword [ebp - 0x76]
call fcn.005b2218
call fcn.005b2014
jmp case.0x51038b.5039
mov edx, dword [ebp - 0x76]
mov eax, edi
call fcn.0051c638
jmp case.0x51038b.5039
lea edx, [ebp - 0x76]
mov ecx, dword [ebp - 0xc]
mov eax, edi
call fcn.0051c2cc
jmp case.0x51038b.5039
lea edx, [ebp - 0x76]
mov ecx, dword [ebp - 0xc]
mov eax, edi
call fcn.0051b704
jmp case.0x51038b.5039
mov eax, dword [ebp - 0x70]
shr eax, 0x10
movzx eax, ax
push eax
mov eax, dword [ebp - 0x6c]
push eax
mov eax, dword [ebp - 0x68]
push eax
lea edx, [ebp - 0x4e4]
mov eax, dword [ebp - 0xc]
call fcn.004adf90
mov eax, dword [ebp - 0x4e4]
push eax
movzx ecx, word [ebp - 0x70]
mov edx, dword [ebp - 0x76]
mov eax, edi
call fcn.0051ca6c
jmp case.0x51038b.5039
mov ecx, dword [ebp - 0x68]
mov edx, dword [ebp - 0x76]
mov eax, edi
call fcn.0051cc18
jmp case.0x51038b.5039
mov ecx, dword [ebp - 0x6c]
mov edx, dword [ebp - 0x70]
mov eax, dword [0x6945ac]
call fcn.00523250
jmp case.0x51038b.5039
push 1
push 0
mov ecx, 0xffffff
mov edx, 0x518050
mov eax, dword [0x69458c]
call fcn.0053ca7c
jmp case.0x51038b.5039
mov ecx, dword [ebp - 0x6c]
mov edx, dword [ebp - 0x70]
mov eax, dword [0x6945ac]
call fcn.00523338
jmp case.0x51038b.5039
mov eax, dword [0x688a9c]
mov eax, dword [eax]
mov edx, dword [ebp - 0x76]
mov dword [eax + 0x24], edx
mov eax, dword [0x688a9c]
mov eax, dword [eax]
mov si, 0xfff1
call fcn.00404528
imul eax, dword [ebp - 0x68], 0x43
mov edx, dword [0x68878c]
lea ecx, [edx + eax*4 + 0x97]
mov edx, dword [ebp - 0xc]
mov eax, edi
call fcn.0050e52c
imul eax, dword [ebp - 0x68], 0x43
mov edx, dword [0x68878c]
movzx eax, word [edx + eax*4 + 0x9b]
lea edx, [ebp - 0x57c]
call fcn.0057d7c8
imul eax, dword [ebp - 0x68], 0x43
mov edx, dword [0x68878c]
lea esi, [ebp - 0x57c]
lea edi, [edx + eax*4]
mov ecx, 0x25
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
jmp case.0x51038b.5039
mov eax, dword [0x688a9c]
mov eax, dword [eax]
mov edx, dword [ebp - 0x76]
mov dword [eax + 0x24], edx
mov eax, dword [0x688a9c]
mov eax, dword [eax]
mov si, 0xfff1
call fcn.00404528
mov eax, dword [0x688384]
mov eax, dword [eax]
sub eax, 0x10
jae 0x51346b
mov eax, dword [0x688384]
imul eax, dword [eax], 0x43
mov edx, dword [0x68878c]
mov ecx, dword [0x688384]
lea edi, [edx + eax*4]
lea esi, [ecx + 6]
mov ecx, 0x43
rep movsd dword es:[edi], dword [esi]
mov eax, dword [0x688384]
mov eax, dword [eax]
add eax, 0xfffffff0
sub eax, 5
jae 0x5134b2
lea edx, [ebp - 0x590]
mov eax, dword [0x688384]
add eax, 0x9d
call fcn.0048b9b4
mov eax, dword [0x688384]
mov eax, dword [eax]
lea eax, [eax + eax*8]
mov edx, dword [0x68878c]
lea esi, [ebp - 0x590]
lea edi, [edx + eax*2 + 0xd23]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
mov eax, dword [0x688384]
mov byte [eax + 8], 0
call fcn.005b2014
jmp case.0x51038b.5039
mov eax, dword [0x688384]
add eax, 6
or edx, 0xffffffff
call fcn.005b17a0
mov eax, dword [0x688384]
mov byte [eax + 8], 0
call fcn.005b2014
jmp case.0x51038b.5039
mov eax, dword [0x688a9c]
mov eax, dword [eax]
mov edx, dword [ebp - 0x76]
mov dword [eax + 0x24], edx
mov eax, dword [0x688a9c]
mov eax, dword [eax]
mov si, 0xfff1
call fcn.00404528
mov eax, dword [0x688384]
add eax, 6
or edx, 0xffffffff
call fcn.005b17a0
mov eax, dword [0x688384]
mov byte [eax + 8], 0
call fcn.005b2014
jmp case.0x51038b.5039
mov eax, dword [0x688384]
cmp dword [eax], 0
jge 0x51359d
mov esi, dword [0x688384]
mov esi, dword [esi]
inc esi
neg esi
mov eax, esi
sub eax, 0x10
jae 0x513562
imul eax, esi, 0x43
mov edx, dword [0x68878c]
mov ecx, dword [0x688384]
push esi
lea edi, [edx + eax*4]
lea esi, [ecx + 6]
mov ecx, 0x43
rep movsd dword es:[edi], dword [esi]
pop esi
mov eax, esi
add eax, 0xfffffff0
sub eax, 5
jae 0x51359d
lea edx, [ebp - 0x590]
mov eax, dword [0x688384]
add eax, 0x9d
call fcn.0048b9b4
lea eax, [esi + esi*8]
mov edx, dword [0x68878c]
lea esi, [ebp - 0x590]
lea edi, [edx + eax*2 + 0xd23]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
mov eax, dword [0x688384]
mov byte [eax + 8], 0
call fcn.005b2014
jmp case.0x51038b.5039
call sub.kernel32.dll_GetTickCount
mov edx, dword [0x689150]
mov edx, dword [edx]
mov dword [edx + 0x1f48], eax
mov eax, dword [0x688900]
mov eax, dword [eax]
mov eax, dword [eax + 0x360]
mov dl, 1
call fcn.00493bf0
jmp case.0x51038b.5039
call sub.kernel32.dll_GetTickCount
mov edx, dword [0x689150]
mov edx, dword [edx]
mov dword [edx + 0x1f48], eax
mov eax, dword [0x6884f8]
mov eax, dword [eax]
mov eax, dword [eax + 0x3c4]
mov dl, 1
call fcn.00493bf0
jmp case.0x51038b.5039
call sub.kernel32.dll_GetTickCount
mov edx, dword [0x689150]
mov edx, dword [edx]
mov dword [edx + 0x1f48], eax
mov eax, dword [0x688900]
mov eax, dword [eax]
mov eax, dword [eax + 0x3a0]
mov dl, 1
call fcn.00493bf0
jmp case.0x51038b.5039
call sub.kernel32.dll_GetTickCount
mov edx, dword [0x689150]
mov edx, dword [edx]
mov dword [edx + 0x1f48], eax
mov eax, dword [0x6884f8]
mov eax, dword [eax]
mov eax, dword [eax + 0x364]
mov dl, 1
call fcn.00493bf0
jmp case.0x51038b.5039
mov eax, dword [ebp - 0x76]
sub eax, 0xfffffffd
je 0x5136f4
dec eax
je 0x5136ba
dec eax
je 0x513680
sub eax, 2
je 0x51372e
jmp case.0x51038b.5039
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517ffc]
mov edx, 0x518068
call fcn.00553480
mov eax, dword [0x6884f8]
mov eax, dword [eax]
mov byte [eax + 0x1291], 0
mov eax, dword [0x688598]
mov byte [eax + 2], 0
jmp case.0x51038b.5039
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517ffc]
mov edx, 0x518090
call fcn.00553480
mov eax, dword [0x6884f8]
mov eax, dword [eax]
mov byte [eax + 0x1291], 0
mov eax, dword [0x688598]
mov byte [eax + 2], 0
jmp case.0x51038b.5039
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517ffc]
mov edx, 0x5180bc
call fcn.00553480
mov eax, dword [0x6884f8]
mov eax, dword [eax]
mov byte [eax + 0x1291], 0
mov eax, dword [0x688598]
mov byte [eax + 2], 0
jmp case.0x51038b.5039
mov eax, dword [0x688c00]
cmp byte [eax], 6
jne 0x51374b
mov eax, dword [0x688c00]
mov byte [eax], 0
mov dx, 1
mov eax, edi
call fcn.00447e40
mov eax, 0x3e
call fcn.005acb64
mov eax, dword [0x6884f8]
mov eax, dword [eax]
movzx edx, byte [ebp - 0x68]
mov byte [eax + 0x15dc], dl
movzx eax, word [ebp - 0x70]
movzx edx, word [ebp - 0x6c]
shl edx, 0x10
or eax, edx
mov edx, dword [0x6884f8]
mov edx, dword [edx]
mov dword [edx + 0x15d8], eax
mov eax, dword [0x6884f8]
mov eax, dword [eax]
mov byte [eax + 0x15d0], 1
mov eax, dword [0x6884f8]
mov eax, dword [eax]
xor edx, edx
mov dword [eax + 0x15d4], edx
call sub.kernel32.dll_GetTickCount
mov edx, dword [0x6884f8]
mov edx, dword [edx]
mov edx, dword [edx + 0x374]
mov dword [edx + 0x334], eax
jmp case.0x51038b.5039
lea edx, [ebp - 0x76]
mov ecx, dword [ebp - 0xc]
mov eax, edi
call fcn.0051cdd8
jmp case.0x51038b.5039
mov edx, dword [ebp - 0x76]
mov eax, dword [0x694598]
call fcn.0052c1b8
mov esi, eax
test esi, esi
je case.0x51038b.5039
cmp dword [ebp - 0x68], 1
sete al
mov byte [esi + 0x134], al
cmp byte [esi + 0x134], 0
je 0x513893
lea edx, [ebp - 0x594]
mov eax, dword [ebp - 0xc]
call fcn.004adf90
mov edx, dword [ebp - 0x594]
lea eax, [ebp - 0x420]
mov ecx, 0xff
call fcn.00405404
lea edx, [ebp - 0x420]
lea eax, [esi + 0x137]
mov cl, 0x18
call fcn.0040396c
movzx eax, byte [ebp - 0x70]
dec eax
mov byte [esi + 0x135], al
movzx eax, word [ebp - 0x70]
shr eax, 8
test al, al
setne al
mov byte [esi + 0x136], al
cmp byte [esi + 0x136], 0
je 0x513862
mov byte [esi + 0x14], 1
jmp 0x513866
mov byte [esi + 0x14], 5
mov eax, dword [0x6886e4]
mov eax, dword [eax]
cmp eax, dword [ebp - 0x76]
jne 0x5138cf
mov eax, dword [0x688de8]
mov eax, dword [eax]
mov eax, dword [eax + 0x4c0]
xor edx, edx
call fcn.00493bf0
mov eax, dword [0x6890f0]
mov dword [eax], 0xffffffff
jmp 0x5138cf
mov eax, dword [0x688de8]
mov eax, dword [eax]
mov eax, dword [eax + 0x4c0]
cmp byte [eax + 0x314], 0
je 0x5138cf
mov eax, dword [0x688de8]
mov eax, dword [eax]
mov eax, dword [eax + 0x6f0]
cmp eax, dword [ebp - 0x76]
jne 0x5138cf
mov eax, dword [0x688de8]
mov eax, dword [eax]
mov eax, dword [eax + 0x4c0]
xor edx, edx
call fcn.00493bf0
mov eax, esi
mov si, 0xfff9
call fcn.00404528
jmp case.0x51038b.5039
lea edx, [ebp - 0x76]
mov ecx, dword [ebp - 0xc]
mov eax, edi
call fcn.0051d230
jmp case.0x51038b.5039
mov eax, dword [0x688a9c]
mov eax, dword [eax]
mov edx, dword [ebp - 0x76]
mov dword [eax + 0xb8], edx
movzx eax, word [ebp - 0x70]
movzx edx, word [ebp - 0x6c]
shl edx, 0x10
or eax, edx
mov edx, dword [0x688a9c]
mov edx, dword [edx]
mov dword [edx + 0xbc], eax
mov eax, dword [ebp - 0x68]
cmp eax, 0xf
ja case.0x513928.0
jmp dword [eax*4 + 0x51392f]
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517ffc]
mov edx, 0x5180e8
call fcn.00553480
jmp case.0x513928.0
push 0x46
push 0
push 0
push 0x518118
mov eax, dword [0x688cd8]
push dword [eax]
push 0x518138
lea eax, [ebp - 0x598]
mov edx, 3
call fcn.004054fc
mov edx, dword [ebp - 0x598]
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517ffc]
call fcn.00553480
jmp case.0x513928.0
push 0x46
push 0
push 0
push 0x518118
mov eax, dword [0x688528]
push dword [eax]
push 0x518138
lea eax, [ebp - 0x59c]
mov edx, 3
call fcn.004054fc
mov edx, dword [ebp - 0x59c]
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517ffc]
call fcn.00553480
jmp case.0x513928.0
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517ffc]
mov edx, 0x518148
call fcn.00553480
jmp case.0x513928.0
cmp dword [ebp - 0xc], 0
je case.0x513928.0
lea edx, [ebp - 0x5a0]
mov eax, dword [ebp - 0xc]
call fcn.004adf90
mov edx, dword [ebp - 0x5a0]
lea eax, [ebp - 0xc]
call fcn.004051f0
push 0
lea eax, [ebp - 0x5a4]
push eax
mov byte [ebp - 0x230], 0x2f
lea ecx, [ebp - 0x230]
lea edx, [ebp - 0x1c]
mov eax, dword [ebp - 0xc]
call fcn.00488aec
mov edx, dword [ebp - 0x5a4]
lea eax, [ebp - 0xc]
call fcn.004051f0
xor edx, edx
mov eax, dword [ebp - 0x1c]
call fcn.0040a1d0
mov esi, eax
xor edx, edx
mov eax, dword [ebp - 0xc]
call fcn.0040a1d0
mov dword [ebp - 0x34], eax
mov eax, esi
sub eax, 0xc
jae case.0x513928.0
cmp dword [ebp - 0x34], 0
jle 0x513b4e
mov eax, dword [0x688b2c]
movzx eax, word [eax + 0xa9]
cmp eax, dword [ebp - 0x34]
jle 0x513af8
mov eax, dword [0x688b2c]
movzx edx, word [ebp - 0x34]
sub word [eax + 0xa9], dx
mov edx, dword [0x688b2c]
mov edx, dword [edx]
mov eax, dword [0x688b2c]
add eax, 6
call fcn.005b17a0
imul eax, esi, 0x119
mov edx, dword [0x688b80]
movzx eax, word [edx + eax + 0xae]
cmp eax, dword [ebp - 0x34]
jle 0x513b2e
imul eax, esi, 0x119
mov edx, dword [0x688b80]
movzx ecx, word [ebp - 0x34]
sub word [edx + eax + 0xae], cx
jmp case.0x513928.0
imul eax, esi, 0x119
mov edx, dword [0x688b80]
lea eax, [edx + eax]
xor ecx, ecx
mov edx, 0x119
call fcn.00488380
jmp case.0x513928.0
imul eax, esi, 0x119
mov edx, dword [0x688b80]
test byte [edx + eax + 0x1e], 4
je 0x513bde
imul eax, esi, 0x119
mov edx, dword [0x688b80]
cmp word [edx + eax + 0x2b], 1
jbe 0x513bde
imul eax, esi, 0x119
mov edx, dword [0x688b80]
movzx eax, word [edx + eax + 0xae]
mov edx, dword [0x688b2c]
cmp ax, word [edx + 0xa9]
jbe 0x513bbe
imul eax, esi, 0x119
mov edx, dword [0x688b80]
mov ecx, dword [0x688b2c]
movzx ecx, word [ecx + 0xa9]
sub word [edx + eax + 0xae], cx
jmp case.0x513928.0
imul eax, esi, 0x119
mov edx, dword [0x688b80]
lea eax, [edx + eax]
xor ecx, ecx
mov edx, 0x119
call fcn.00488380
jmp case.0x513928.0
imul eax, esi, 0x119
mov edx, dword [0x688b80]
lea eax, [edx + eax]
xor ecx, ecx
mov edx, 0x119
call fcn.00488380
jmp case.0x513928.0
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517ffc]
mov edx, 0x518174
call fcn.00553480
jmp case.0x513928.0
push 0x46
push 0
push 0
push 0x5181a8
mov eax, dword [0x688cd8]
push dword [eax]
push 0x5181c8
lea eax, [ebp - 0x5a8]
mov edx, 3
call fcn.004054fc
mov edx, dword [ebp - 0x5a8]
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517ffc]
call fcn.00553480
jmp case.0x513928.0
push 0x46
push 0
push 0
push 0x5181a8
mov eax, dword [0x688528]
push dword [eax]
push 0x5181c8
lea eax, [ebp - 0x5ac]
mov edx, 3
call fcn.004054fc
mov edx, dword [ebp - 0x5ac]
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517ffc]
call fcn.00553480
jmp case.0x513928.0
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517ffc]
mov edx, 0x5181e0
call fcn.00553480
jmp case.0x513928.0
mov ebx, 0xc
mov eax, dword [0x688bf4]
add eax, 0xa2
mov dword [ebp - 0x64], eax
mov eax, dword [ebp - 0x64]
mov eax, dword [eax]
mov edx, dword [0x688b2c]
cmp eax, dword [edx + 0x9d]
jne 0x513ddd
cmp dword [ebp - 0xc], 0
je 0x513db7
lea edx, [ebp - 0x5b0]
mov eax, dword [ebp - 0xc]
call fcn.004adf90
mov edx, dword [ebp - 0x5b0]
lea eax, [ebp - 0xc]
call fcn.004051f0
push 0
lea eax, [ebp - 0x5b4]
push eax
mov byte [ebp - 0x230], 0x2f
lea ecx, [ebp - 0x230]
lea edx, [ebp - 0x1c]
mov eax, dword [ebp - 0xc]
call fcn.00488aec
mov edx, dword [ebp - 0x5b4]
lea eax, [ebp - 0xc]
call fcn.004051f0
xor edx, edx
mov eax, dword [ebp - 0x1c]
call fcn.0040a1d0
mov esi, eax
xor edx, edx
mov eax, dword [ebp - 0xc]
call fcn.0040a1d0
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x34], 0
jle 0x513d76
mov eax, dword [ebp - 0x64]
movzx edx, word [ebp - 0x34]
sub word [eax + 0xc], dx
test esi, esi
jle case.0x513928.0
cmp dword [ebp - 0x34], 0
jle case.0x513928.0
mov eax, dword [0x688b2c]
push esi
mov esi, eax
lea edi, [ebp - 0x1b4]
mov ecx, 0x45
rep movsd dword es:[edi], dword [esi]
pop esi
mov dword [ebp - 0x117], esi
movzx eax, word [ebp - 0x34]
mov word [ebp - 0x10b], ax
or edx, 0xffffffff
lea eax, [ebp - 0x1ae]
call fcn.005b17a0
jmp case.0x513928.0
mov eax, dword [ebp - 0x64]
add eax, 0xffffff5e
xor ecx, ecx
mov edx, 0x119
call fcn.00488380
mov eax, dword [0x688b2c]
add eax, 6
or edx, 0xffffffff
call fcn.005b17a0
jmp case.0x513928.0
add dword [ebp - 0x64], 0x119
dec ebx
jne 0x513ce0
mov eax, dword [0x688b2c]
mov byte [eax + 8], 0
jmp case.0x51038b.5039
push 0
lea eax, [ebp - 0x5b8]
push eax
mov byte [ebp - 0x230], 0x2f
lea ecx, [ebp - 0x230]
lea edx, [ebp - 0x1c]
mov eax, dword [ebp - 0xc]
call fcn.00488aec
mov edx, dword [ebp - 0x5b8]
lea eax, [ebp - 0xc]
call fcn.004051f0
call fcn.0040c18c
fstp qword [ebp - 0x50]
wait
push dword [ebp - 0x4c]
push dword [ebp - 0x50]
lea eax, [ebp - 0x20]
mov edx, 0x51820c
call fcn.0040cd8c
push dword [ebp - 0x20]
lea edx, [ebp - 0x5c0]
mov eax, dword [ebp - 0x1c]
call fcn.004adf90
push dword [ebp - 0x5c0]
push 0x518224
lea edx, [ebp - 0x5c4]
mov eax, dword [ebp - 0xc]
call fcn.004adf90
push dword [ebp - 0x5c4]
lea eax, [ebp - 0x5bc]
mov edx, 4
call fcn.004054fc
mov edx, dword [ebp - 0x5bc]
mov eax, dword [0x688de8]
mov eax, dword [eax]
call fcn.004cf3c8
jmp case.0x51038b.5039
cmp dword [ebp - 0x68], 1
jne 0x513f98
mov ebx, 0xc
mov eax, dword [0x6882f0]
add eax, 0xa2
mov dword [ebp - 0x64], eax
mov eax, dword [ebp - 0x64]
mov eax, dword [eax]
cmp eax, dword [ebp - 0x76]
jne 0x513f85
call fcn.0040c18c
fstp qword [ebp - 0x58]
wait
push dword [ebp - 0x54]
push dword [ebp - 0x58]
lea eax, [ebp - 0x24]
mov edx, 0x51820c
call fcn.0040cd8c
push dword [ebp - 0x24]
lea edx, [ebp - 0x5cc]
mov eax, dword [ebp - 0xc]
call fcn.004adf90
push dword [ebp - 0x5cc]
push 0x518230
lea eax, [ebp - 0x5d0]
mov edx, dword [ebp - 0x64]
add edx, 0xffffff6b
call fcn.004053cc
push dword [ebp - 0x5d0]
push 0x518248
mov eax, dword [ebp - 0x6c]
xor edx, edx
push edx
push eax
lea eax, [ebp - 0x5d4]
call fcn.0040a114
push dword [ebp - 0x5d4]
lea eax, [ebp - 0x5c8]
mov edx, 6
call fcn.004054fc
mov edx, dword [ebp - 0x5c8]
mov eax, dword [0x688de8]
mov eax, dword [eax]
call fcn.004cf3c8
cmp dword [ebp - 0x70], 0
jbe 0x513f6c
mov eax, dword [ebp - 0x64]
movzx edx, word [ebp - 0x70]
mov word [eax + 0xc], dx
jmp case.0x51038b.5039
mov eax, dword [ebp - 0x64]
add eax, 0xffffff5e
xor ecx, ecx
mov edx, 0x119
call fcn.00488380
jmp case.0x51038b.5039
add dword [ebp - 0x64], 0x119
dec ebx
jne 0x513eb7
jmp case.0x51038b.5039
mov eax, dword [ebp - 0x6c]
sub eax, 0xc
jae case.0x51038b.5039
call fcn.0040c18c
fstp qword [ebp - 0x60]
wait
push dword [ebp - 0x5c]
push dword [ebp - 0x60]
lea eax, [ebp - 0x28]
mov edx, 0x51820c
call fcn.0040cd8c
push dword [ebp - 0x28]
lea edx, [ebp - 0x5dc]
mov eax, dword [ebp - 0xc]
call fcn.004adf90
push dword [ebp - 0x5dc]
push 0x518258
lea eax, [ebp - 0x5e0]
imul edx, dword [ebp - 0x6c], 0x119
mov ecx, dword [0x688278]
lea edx, [ecx + edx + 0xd]
call fcn.004053cc
push dword [ebp - 0x5e0]
push 0x518248
lea edx, [ebp - 0x5e4]
mov eax, dword [ebp - 0x76]
call fcn.0040a028
push dword [ebp - 0x5e4]
lea eax, [ebp - 0x5d8]
mov edx, 6
call fcn.004054fc
mov edx, dword [ebp - 0x5d8]
mov eax, dword [0x688de8]
mov eax, dword [eax]
call fcn.004cf3c8
cmp dword [ebp - 0x70], 0
jbe 0x51407d
imul eax, dword [ebp - 0x6c], 0x119
mov edx, dword [0x688278]
movzx eax, word [edx + eax + 0xae]
sub ax, word [ebp - 0x70]
mov word [ebp - 0x10b], ax
imul eax, dword [ebp - 0x6c], 0x119
mov edx, dword [0x688278]
movzx ecx, word [ebp - 0x70]
mov word [edx + eax + 0xae], cx
jmp case.0x51038b.5039
imul eax, dword [ebp - 0x6c], 0x119
mov edx, dword [0x688278]
lea eax, [edx + eax]
xor ecx, ecx
mov edx, 0x119
call fcn.00488380
jmp case.0x51038b.5039
mov eax, dword [0x688a9c]
cmp dword [eax], 0
je case.0x51038b.5039
mov eax, dword [0x688a9c]
mov eax, dword [eax]
mov edx, dword [ebp - 0x76]
mov dword [eax + 0xb8], edx
movzx eax, word [ebp - 0x70]
movzx edx, word [ebp - 0x6c]
shl edx, 0x10
or eax, edx
mov edx, dword [0x688a9c]
mov edx, dword [edx]
mov dword [edx + 0xbc], eax
mov eax, dword [0x688de8]
mov eax, dword [eax]
mov eax, dword [eax + 0x4a4]
mov byte [eax + 0x316], 1
cmp dword [ebp - 0x68], 0
jbe 0x5141b5
mov eax, dword [0x688a9c]
mov eax, dword [eax]
mov byte [eax + 0x134], 1
movzx eax, byte [ebp - 0x68]
dec eax
mov edx, dword [0x688a9c]
mov edx, dword [edx]
mov byte [edx + 0x135], al
movzx eax, word [ebp - 0x68]
shr eax, 8
test al, al
setne al
mov edx, dword [0x688a9c]
mov edx, dword [edx]
mov byte [edx + 0x136], al
mov eax, dword [0x688de8]
mov eax, dword [eax]
mov eax, dword [eax + 0x498]
mov eax, dword [eax + 0x33c]
mov edx, dword [eax]
call dword [edx + 0x44]
mov eax, dword [0x688a9c]
mov eax, dword [eax]
cmp byte [eax + 0x136], 0
je 0x514165
mov eax, dword [0x688a9c]
mov eax, dword [eax]
mov byte [eax + 0x14], 1
jmp 0x514170
mov eax, dword [0x688a9c]
mov eax, dword [eax]
mov byte [eax + 0x14], 5
mov eax, dword [0x688a9c]
mov eax, dword [eax]
add eax, 0x137
mov edx, dword [0x688cd4]
mov cl, 0x18
call fcn.0040396c
mov eax, dword [0x688de8]
mov eax, dword [eax]
mov eax, dword [eax + 0x4a4]
mov edx, 0x518270
call fcn.004922a8
mov eax, dword [0x688a9c]
mov eax, dword [eax]
mov si, 0xfff9
call fcn.00404528
jmp case.0x51038b.5039
cmp dword [ebp - 0x68], 0
jne case.0x51038b.5039
mov eax, dword [0x688980]
xor edx, edx
mov dword [eax], edx
mov eax, dword [0x68916c]
xor edx, edx
mov dword [eax], edx
mov eax, dword [0x688a9c]
mov eax, dword [eax]
mov byte [eax + 0x134], 0
mov eax, dword [0x688de8]
mov eax, dword [eax]
mov eax, dword [eax + 0x4a4]
mov edx, 0x518284
call fcn.004922a8
mov eax, dword [0x688de8]
mov eax, dword [eax]
mov eax, dword [eax + 0x48c]
cmp byte [eax + 0x314], 0
jne 0x514218
mov eax, dword [0x688de8]
mov eax, dword [eax]
call fcn.004cf448
mov eax, dword [0x688a9c]
mov eax, dword [eax]
mov si, 0xfff9
call fcn.00404528
jmp case.0x51038b.5039
mov eax, dword [0x688980]
mov edx, dword [ebp - 0x76]
mov dword [eax], edx
movzx eax, word [ebp - 0x70]
movzx edx, word [ebp - 0x6c]
shl edx, 0x10
or eax, edx
mov edx, dword [0x68916c]
mov dword [edx], eax
jmp case.0x51038b.5039
mov edx, dword [ebp - 0xc]
mov eax, edi
call fcn.0051cc68
jmp case.0x51038b.5039
mov eax, dword [0x688a9c]
mov eax, dword [eax]
movzx edx, word [ebp - 0x76]
mov word [eax + 0xab], dx
mov eax, dword [0x688a9c]
mov eax, dword [eax]
movzx edx, word [ebp - 0x70]
mov word [eax + 0xaf], dx
mov eax, dword [0x688a9c]
mov eax, dword [eax]
movzx edx, word [ebp - 0x6c]
mov word [eax + 0xb3], dx
jmp case.0x51038b.5039
mov eax, 0x6a
call fcn.005ac880
mov eax, dword [0x688a9c]
mov eax, dword [eax]
mov eax, dword [eax + 0xb8]
cmp eax, dword [ebp - 0x76]
jge 0x51431a
push 1
push 0
push 0x517f30
mov eax, dword [0x688528]
push dword [eax]
push 0x5179bc
mov eax, dword [0x688a9c]
mov eax, dword [eax]
push dword [eax + 0xb8]
mov eax, dword [ebp - 0x76]
pop edx
sub eax, edx
lea edx, [ebp - 0x5ec]
call fcn.0040a028
push dword [ebp - 0x5ec]
push 0x518298
lea eax, [ebp - 0x5e8]
mov edx, 5
call fcn.004054fc
mov edx, dword [ebp - 0x5e8]
mov ecx, 0xff00
mov eax, dword [0x69458c]
call fcn.0053ca7c
mov eax, dword [0x688a9c]
mov eax, dword [eax]
mov edx, dword [ebp - 0x76]
mov dword [eax + 0xb8], edx
movzx eax, word [ebp - 0x70]
movzx edx, word [ebp - 0x6c]
shl edx, 0x10
or eax, edx
mov edx, dword [0x6889a0]
cmp eax, dword [edx]
jle 0x5143a6
push 1
push 0
push 0x517f30
mov eax, dword [0x688a10]
push dword [eax]
push 0x5179bc
movzx eax, word [ebp - 0x70]
movzx edx, word [ebp - 0x6c]
shl edx, 0x10
or eax, edx
mov edx, dword [0x6889a0]
sub eax, dword [edx]
lea edx, [ebp - 0x5f4]
call fcn.0040a028
push dword [ebp - 0x5f4]
push 0x518298
lea eax, [ebp - 0x5f0]
mov edx, 5
call fcn.004054fc
mov edx, dword [ebp - 0x5f0]
mov ecx, 0xff00
mov eax, dword [0x69458c]
call fcn.0053ca7c
movzx eax, word [ebp - 0x70]
movzx edx, word [ebp - 0x6c]
shl edx, 0x10
or eax, edx
mov edx, dword [0x6889a0]
mov dword [edx], eax
jmp case.0x51038b.5039
mov eax, 0x6a
call fcn.005ac880
mov eax, dword [0x688a9c]
mov eax, dword [eax]
mov eax, dword [eax + 0xb8]
cmp eax, dword [ebp - 0x76]
jge 0x51443f
push 1
push 0
push 0x517f30
mov eax, dword [0x688528]
push dword [eax]
push 0x5179bc
mov eax, dword [0x688a9c]
mov eax, dword [eax]
push dword [eax + 0xb8]
mov eax, dword [ebp - 0x76]
pop edx
sub eax, edx
lea edx, [ebp - 0x5fc]
call fcn.0040a028
push dword [ebp - 0x5fc]
push 0x518298
lea eax, [ebp - 0x5f8]
mov edx, 5
call fcn.004054fc
mov edx, dword [ebp - 0x5f8]
mov ecx, 0xff00
mov eax, dword [0x69458c]
call fcn.0053ca7c
mov eax, dword [0x688a9c]
mov eax, dword [eax]
mov edx, dword [ebp - 0x76]
mov dword [eax + 0xb8], edx
movzx eax, word [ebp - 0x70]
movzx edx, word [ebp - 0x6c]
shl edx, 0x10
or eax, edx
mov edx, dword [0x688a9c]
mov edx, dword [edx]
mov dword [edx + 0xc0], eax
jmp case.0x51038b.5039
push 0
push 0
push 0
movzx eax, word [ebp - 0x70]
movzx edx, word [ebp - 0x6c]
shl edx, 0x10
or eax, edx
push eax
movzx eax, word [ebp - 0x68]
or eax, 0
push eax
push 0
lea edx, [ebp - 0x600]
mov eax, dword [ebp - 0xc]
call fcn.004adf90
mov eax, dword [ebp - 0x600]
or edx, 0xffffffff
call fcn.0040a1d0
push eax
push 0xffffffffffffffff
push 0xffffffffffffffff
movzx edx, word [ebp - 0x72]
mov ecx, dword [ebp - 0x76]
mov eax, dword [0x694598]
call fcn.0052dd50
jmp case.0x51038b.5039
push 0
push 0
push 0
movzx eax, word [ebp - 0x70]
movzx edx, word [ebp - 0x6c]
shl edx, 0x10
or eax, edx
push eax
mov eax, dword [ebp - 0x68]
push eax
push 0
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
movzx edx, word [ebp - 0x72]
mov ecx, dword [ebp - 0x76]
mov eax, dword [0x694598]
call fcn.0052dd50
jmp case.0x51038b.5039
cmp dword [ebp - 0x76], 0
jle 0x51451b
mov eax, dword [0x689160]
cmp byte [eax + 0x18], 0
jne 0x51451b
call sub.kernel32.dll_GetTickCount
add eax, dword [ebp - 0x76]
mov edx, dword [0x6884fc]
mov dword [edx], eax
mov ecx, dword [0x689160]
mov ecx, dword [ecx + 0x9d]
mov edx, dword [0x689160]
movzx edx, word [edx + 0xa1]
mov eax, dword [0x689160]
mov eax, dword [eax]
call fcn.005b1cbc
mov eax, dword [0x689160]
mov byte [eax + 8], 0
call fcn.005b2014
mov eax, dword [0x688e0c]
cmp dword [eax], 0
je 0x514574
call sub.kernel32.dll_GetTickCount
mov edx, dword [0x6884fc]
mov dword [edx], eax
mov edx, dword [0x688e0c]
mov edx, dword [edx]
mov eax, edi
call fcn.005083c4
mov eax, dword [0x688e0c]
call fcn.00405158
jmp case.0x51038b.5039
mov eax, dword [0x689160]
mov eax, dword [eax + 0x9d]
cmp eax, dword [ebp - 0x76]
jne 0x5145d3
mov eax, dword [0x689160]
movzx edx, word [ebp - 0x70]
mov word [eax + 0xa9], dx
mov eax, dword [0x689160]
movzx edx, word [ebp - 0x6c]
mov word [eax + 0xab], dx
mov edx, dword [0x689160]
add edx, 6
mov eax, dword [0x689160]
mov eax, dword [eax]
call fcn.005b1990
mov eax, dword [0x689160]
mov byte [eax + 8], 0
jmp 0x514638
mov eax, dword [0x6882d4]
cmp byte [eax], 0
je 0x51462f
mov eax, dword [0x68915c]
cmp byte [eax + 8], 0
je 0x51462f
mov eax, dword [0x68915c]
mov eax, dword [eax + 0x9d]
cmp eax, dword [ebp - 0x76]
jne 0x51462f
mov eax, dword [0x68915c]
movzx edx, word [ebp - 0x70]
mov word [eax + 0xa9], dx
mov eax, dword [0x68915c]
movzx edx, word [ebp - 0x6c]
mov word [eax + 0xab], dx
mov edx, dword [0x68915c]
add edx, 6
mov eax, dword [0x68915c]
mov eax, dword [eax]
call fcn.005b1990
jmp 0x514638
mov eax, dword [0x689160]
mov byte [eax + 8], 0
call fcn.005b2014
mov eax, dword [0x688e0c]
call fcn.00405158
jmp case.0x51038b.5039
cmp dword [ebp - 0x68], 0
je 0x51468e
cmp dword [ebp - 0x70], 0
jbe 0x514679
mov eax, dword [0x688e5c]
movzx edx, word [ebp - 0x70]
mov word [eax + 0xa9], dx
mov eax, dword [ebp - 0x6c]
push eax
mov ecx, dword [ebp - 0x6c]
mov edx, dword [ebp - 0x76]
mov eax, edi
call fcn.0051b330
mov edx, dword [0x688e5c]
mov edx, dword [edx]
mov eax, dword [0x688e5c]
add eax, 6
call fcn.005b17a0
mov eax, dword [0x688e5c]
mov byte [eax + 8], 0
call fcn.005b2014
jmp case.0x51038b.5039
cmp dword [ebp - 0x68], 0
jne 0x5146c7
mov eax, dword [ebp - 0x6c]
push eax
mov ecx, dword [ebp - 0x70]
mov edx, dword [ebp - 0x76]
mov eax, edi
call fcn.0051b330
mov ecx, dword [ebp - 0xc]
lea edx, [ebp - 0x76]
mov eax, edi
call fcn.0051ad94
jmp 0x5146d8
mov eax, dword [ebp - 0x6c]
push eax
mov ecx, dword [ebp - 0x70]
mov edx, dword [ebp - 0x76]
mov eax, edi
call fcn.0051b330
mov eax, dword [0x688e5c]
mov byte [eax + 8], 0
call fcn.005b2014
jmp case.0x51038b.5039
cmp dword [ebp - 0xc], 0
je case.0x51038b.5039
mov edx, dword [ebp - 0xc]
mov eax, edi
call fcn.0051d8d4
jmp case.0x51038b.5039
cmp dword [ebp - 0x68], 1
jne 0x514756
mov eax, dword [0x688724]
mov edx, dword [ebp - 0x70]
mov dword [eax], edx
mov eax, dword [0x6883cc]
mov edx, dword [ebp - 0x76]
mov dword [eax], edx
mov eax, dword [0x688724]
mov eax, dword [eax]
add eax, 0xffffff8e
sub eax, 8
jae 0x514736
mov eax, dword [0x688554]
xor edx, edx
mov dword [eax], edx
mov eax, dword [0x688724]
cmp dword [eax], 0x6f
jne case.0x51038b.5039
mov edx, dword [edi + 0x388]
mov eax, edi
call fcn.0050dad0
jmp case.0x51038b.5039
mov eax, dword [0x688f94]
mov edx, dword [ebp - 0x76]
mov dword [eax], edx
cmp dword [ebp - 0xc], 0
je case.0x51038b.5039
mov edx, dword [ebp - 0xc]
mov eax, edi
call fcn.0051dae0
jmp case.0x51038b.5039
mov edx, dword [ebp - 0x76]
mov eax, edi
call fcn.0051da24
jmp case.0x51038b.5039
movzx eax, word [ebp - 0x6c]
movzx edx, word [ebp - 0x68]
shl edx, 0x10
or eax, edx
push eax
mov ecx, dword [ebp - 0x70]
mov edx, dword [ebp - 0x76]
mov eax, edi
call fcn.0051dd00
jmp case.0x51038b.5039
mov eax, dword [ebp - 0x6c]
push eax
mov eax, dword [ebp - 0x76]
push eax
mov ecx, dword [ebp - 0x70]
mov edx, dword [ebp - 0x68]
mov eax, edi
call fcn.0051dd34
jmp case.0x51038b.5039
mov eax, dword [ebp - 0x6c]
push eax
mov ecx, dword [ebp - 0x70]
mov edx, dword [ebp - 0x76]
mov eax, edi
call fcn.0051b330
jmp case.0x51038b.5039
lea edx, [ebp - 0x76]
mov eax, edi
call fcn.0051ab84
jmp case.0x51038b.5039
mov eax, dword [ebp - 0x6c]
push eax
mov eax, dword [ebp - 0x68]
push eax
lea edx, [ebp - 0x604]
mov eax, dword [ebp - 0xc]
call fcn.004adf90
mov eax, dword [ebp - 0x604]
push eax
mov ecx, dword [ebp - 0x70]
mov edx, dword [ebp - 0x76]
mov eax, edi
call fcn.0051dda4
jmp case.0x51038b.5039
mov eax, dword [0x689150]
mov eax, dword [eax]
call fcn.0056c560
jmp case.0x51038b.5039
movzx eax, word [ebp - 0x6c]
movzx edx, word [ebp - 0x68]
shl edx, 0x10
or eax, edx
push eax
mov eax, dword [ebp - 0xc]
push eax
mov ecx, dword [ebp - 0x70]
mov edx, dword [ebp - 0x76]
mov eax, edi
call fcn.0051df7c
jmp case.0x51038b.5039
lea edx, [ebp - 0x608]
mov eax, dword [ebp - 0xc]
call fcn.004adf90
mov ecx, dword [ebp - 0x608]
mov edx, dword [ebp - 0x76]
mov eax, edi
call fcn.0051e1dc
jmp case.0x51038b.5039
lea edx, [ebp - 0x60c]
mov eax, dword [ebp - 0xc]
call fcn.004adf90
mov edx, dword [ebp - 0x60c]
mov eax, edi
call fcn.0051e18c
jmp case.0x51038b.5039
lea edx, [ebp - 0x76]
mov ecx, dword [ebp - 0xc]
mov eax, edi
call fcn.0051e500
jmp case.0x51038b.5039
lea edx, [ebp - 0x76]
mov ecx, dword [ebp - 0xc]
mov eax, edi
call fcn.0051e3f0
jmp case.0x51038b.5039
mov edx, dword [ebp - 0xc]
mov eax, edi
call fcn.0051de7c
jmp case.0x51038b.5039
mov eax, dword [0x688a9c]
mov eax, dword [eax]
mov edx, dword [ebp - 0x76]
mov dword [eax + 0xb8], edx
movzx eax, word [ebp - 0x70]
movzx edx, word [ebp - 0x6c]
shl edx, 0x10
or eax, edx
mov edx, dword [0x6889a0]
mov dword [edx], eax
mov eax, 0x6a
call fcn.005ac880
mov eax, dword [ebp - 0x68]
xor edx, edx
push edx
push eax
mov eax, dword [0x689150]
mov eax, dword [eax]
mov eax, dword [eax + 0x2174]
mov eax, dword [eax + 8]
cdq
cmp edx, dword [esp + 4]
jne 0x514917
cmp eax, dword [esp]
pop edx
pop eax
jbe 0x51494f
jmp 0x51491b
pop edx
pop eax
jle 0x51494f
mov eax, dword [0x689150]
mov eax, dword [eax]
mov eax, dword [eax + 0x2174]
mov edx, dword [ebp - 0x68]
call fcn.0041a308
mov edx, 0x10c
call fcn.00402f70
mov eax, dword [0x689150]
mov eax, dword [eax]
mov eax, dword [eax + 0x2174]
mov edx, dword [ebp - 0x68]
call fcn.0041a1fc
mov eax, dword [0x68910c]
add eax, 6
or edx, 0xffffffff
call fcn.005b17a0
mov eax, dword [0x68910c]
mov byte [eax + 8], 0
jmp case.0x51038b.5039
mov eax, dword [0x68910c]
mov byte [eax + 8], 0
mov eax, dword [ebp - 0x68]
dec eax
je 0x514984
dec eax
je 0x5149c9
jmp case.0x51038b.5039
push 0x46
push 0
push 0
push 0x5182a8
mov eax, dword [0x688528]
push dword [eax]
push 0x5182c0
lea eax, [ebp - 0x610]
mov edx, 3
call fcn.004054fc
mov edx, dword [ebp - 0x610]
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517ffc]
call fcn.00553480
jmp case.0x51038b.5039
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517ffc]
mov edx, 0x5182dc
call fcn.00553480
jmp case.0x51038b.5039
mov eax, 0x6a
call fcn.005ac880
call sub.kernel32.dll_GetTickCount
mov edx, dword [0x689150]
mov edx, dword [edx]
mov dword [edx + 0x1f48], eax
mov eax, dword [0x688a9c]
mov eax, dword [eax]
mov edx, dword [ebp - 0x76]
mov dword [eax + 0xb8], edx
movzx eax, word [ebp - 0x6c]
movzx edx, word [ebp - 0x68]
shl edx, 0x10
or eax, edx
mov edx, dword [0x6889a0]
mov dword [edx], eax
mov eax, 0x10c
call fcn.00402f54
mov edx, dword [0x68910c]
lea esi, [edx + 6]
mov edi, eax
mov ecx, 0x43
rep movsd dword es:[edi], dword [esi]
mov edx, dword [0x689150]
mov edx, dword [edx]
mov edx, dword [edx + 0x2174]
mov ecx, eax
xor eax, eax
xchg edx, eax
call fcn.0041a394
mov eax, dword [0x689150]
mov eax, dword [eax]
mov eax, dword [eax + 0x2174]
cmp dword [eax + 8], 0x1e
jle 0x514aad
mov eax, dword [0x689150]
mov eax, dword [eax]
mov eax, dword [eax + 0x2174]
mov edx, 0x1e
call fcn.0041a308
mov edx, 0x10c
call fcn.00402f70
mov eax, dword [0x689150]
mov eax, dword [eax]
mov eax, dword [eax + 0x2174]
mov edx, 0x1e
call fcn.0041a1fc
mov eax, dword [0x68910c]
mov byte [eax + 8], 0
jmp case.0x51038b.5039
mov eax, dword [ebp - 0x68]
sub eax, 0x10
jae case.0x51038b.5039
mov eax, dword [ebp - 0x68]
lea eax, [eax + eax*2]
mov edx, dword [0x688608]
imul ecx, dword [ebp - 0x76], 0x3e8
mov dword [edx + eax*4], ecx
movzx eax, word [ebp - 0x70]
movzx edx, word [ebp - 0x6c]
shl edx, 0x10
or eax, edx
mov edx, dword [ebp - 0x68]
lea edx, [edx + edx*2]
mov ecx, dword [0x688608]
mov dword [ecx + edx*4 + 4], eax
cmp dword [ebp - 0x76], 0
jle 0x514b74
mov eax, dword [0x6885b8]
mov eax, dword [eax]
mov esi, dword [eax + 8]
dec esi
test esi, esi
jl 0x514b3d
inc esi
xor ebx, ebx
mov eax, dword [0x6885b8]
mov eax, dword [eax]
mov edx, ebx
call fcn.0041a308
cdq
push edx
push eax
mov eax, dword [ebp - 0x68]
xor edx, edx
cmp edx, dword [esp + 4]
jne 0x514b31
cmp eax, dword [esp]
pop edx
pop eax
je case.0x50fad2.5079
inc ebx
dec esi
jne 0x514b12
mov eax, dword [0x6885b8]
mov eax, dword [eax]
mov edx, dword [ebp - 0x68]
call fcn.0041a1b0
mov eax, dword [ebp - 0x68]
lea eax, [eax + eax*2]
mov edx, dword [0x688608]
mov eax, dword [edx + eax*4 + 8]
mov dl, 1
call fcn.00493140
mov eax, dword [0x689150]
mov eax, dword [eax]
call fcn.0056bc90
jmp case.0x51038b.5039
mov eax, dword [0x6885b8]
mov eax, dword [eax]
mov esi, dword [eax + 8]
dec esi
test esi, esi
jl case.0x51038b.5039
inc esi
xor ebx, ebx
mov eax, dword [0x6885b8]
mov eax, dword [eax]
mov edx, ebx
call fcn.0041a308
cdq
push edx
push eax
mov eax, dword [ebp - 0x68]
xor edx, edx
cmp edx, dword [esp + 4]
jne 0x514ba9
cmp eax, dword [esp]
pop edx
pop eax
jne 0x514be3
mov eax, dword [ebp - 0x68]
lea eax, [eax + eax*2]
mov edx, dword [0x688608]
mov eax, dword [edx + eax*4 + 8]
xor edx, edx
call fcn.00493140
mov eax, dword [0x6885b8]
mov eax, dword [eax]
mov edx, ebx
call fcn.0041a1fc
mov eax, dword [0x689150]
mov eax, dword [eax]
call fcn.0056bc90
jmp case.0x51038b.5039
inc ebx
dec esi
jne 0x514b8a
jmp case.0x51038b.5039
call sub.kernel32.dll_GetTickCount
mov edx, dword [0x689150]
mov edx, dword [edx]
mov dword [edx + 0x1f48], eax
mov edx, dword [0x68910c]
mov edx, dword [edx]
mov eax, dword [0x68910c]
add eax, 6
call fcn.005b17a0
mov eax, dword [0x68910c]
mov byte [eax + 8], 0
cmp dword [ebp - 0x76], 1
jne 0x514c68
push 0x46
push 0
push 0
push 0x518304
mov eax, dword [0x688528]
push dword [eax]
push 0x518328
lea eax, [ebp - 0x614]
mov edx, 3
call fcn.004054fc
mov edx, dword [ebp - 0x614]
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
call fcn.00553480
jmp case.0x51038b.5039
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x518334
call fcn.00553480
jmp case.0x51038b.5039
mov eax, dword [0x689150]
mov eax, dword [eax]
call fcn.005435d8
mov eax, dword [0x68910c]
cmp byte [eax + 8], 0
je case.0x51038b.5039
call sub.kernel32.dll_GetTickCount
mov edx, dword [0x689150]
mov edx, dword [edx]
mov dword [edx + 0x1f48], eax
mov eax, dword [0x688a9c]
mov eax, dword [eax]
mov edx, dword [ebp - 0x76]
mov dword [eax + 0xb8], edx
mov eax, dword [0x68910c]
movzx edx, word [ebp - 0x68]
mov word [eax + 0xa9], dx
mov eax, dword [0x68910c]
movzx edx, word [ebp - 0x68]
mov word [eax + 0xab], dx
movzx eax, word [ebp - 0x70]
movzx edx, word [ebp - 0x6c]
shl edx, 0x10
or eax, edx
mov edx, dword [0x6889a0]
mov dword [edx], eax
mov eax, dword [0x6882d4]
mov byte [eax], 1
mov eax, dword [0x68910c]
mov edx, dword [0x68915c]
mov esi, eax
mov edi, edx
mov ecx, 0x45
rep movsd dword es:[edi], dword [esi]
mov eax, dword [0x689150]
mov eax, dword [eax]
call fcn.005435d8
mov eax, dword [0x68910c]
mov byte [eax + 8], 0
jmp case.0x51038b.5039
mov eax, dword [0x689150]
mov eax, dword [eax]
call fcn.005435d8
call sub.kernel32.dll_GetTickCount
mov edx, dword [0x689150]
mov edx, dword [edx]
mov dword [edx + 0x1f48], eax
mov eax, dword [0x6882d4]
mov byte [eax], 1
mov eax, dword [0x68910c]
mov edx, dword [0x68915c]
mov esi, eax
mov edi, edx
mov ecx, 0x45
rep movsd dword es:[edi], dword [esi]
mov eax, dword [0x689150]
mov eax, dword [eax]
call fcn.005435d8
mov eax, dword [0x68910c]
mov byte [eax + 8], 0
cmp dword [ebp - 0x76], 1
jne 0x514db1
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x518354
call fcn.00553480
jmp case.0x51038b.5039
push 0x46
push 0
push 0
push 0x518374
mov eax, dword [0x688528]
push dword [eax]
push 0x51838c
lea eax, [ebp - 0x618]
mov edx, 3
call fcn.004054fc
mov edx, dword [ebp - 0x618]
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
call fcn.00553480
jmp case.0x51038b.5039
call sub.kernel32.dll_GetTickCount
mov edx, dword [0x689150]
mov edx, dword [edx]
mov dword [edx + 0x1f48], eax
mov eax, dword [0x68910c]
add eax, 6
mov ecx, dword [ebp - 0x6c]
mov edx, dword [ebp - 0x70]
call fcn.005b18d4
mov eax, dword [0x68910c]
mov byte [eax + 8], 0
jmp case.0x51038b.5039
call sub.kernel32.dll_GetTickCount
mov edx, dword [0x689150]
mov edx, dword [edx]
mov dword [edx + 0x1f48], eax
mov edx, dword [0x68910c]
mov edx, dword [edx]
mov eax, dword [0x68910c]
add eax, 6
call fcn.005b17a0
mov eax, dword [0x68910c]
mov byte [eax + 8], 0
jmp case.0x51038b.5039
lea edx, [ebp - 0x76]
mov ecx, dword [ebp - 0xc]
mov eax, edi
call fcn.0051ebf4
jmp case.0x51038b.5039
lea edx, [ebp - 0x76]
mov ecx, dword [ebp - 0xc]
mov eax, edi
call fcn.0050ad8c
jmp case.0x51038b.5039
call sub.kernel32.dll_GetTickCount
mov edx, dword [0x689150]
mov edx, dword [edx]
mov dword [edx + 0x1f48], eax
mov eax, dword [0x68910c]
add eax, 6
or edx, 0xffffffff
call fcn.005b17a0
mov eax, dword [0x68910c]
mov byte [eax + 8], 0
jmp case.0x51038b.5039
call sub.kernel32.dll_GetTickCount
mov edx, dword [0x689150]
mov edx, dword [edx]
mov dword [edx + 0x1f48], eax
mov eax, dword [0x68910c]
mov eax, dword [eax]
shr eax, 0x10
movzx ecx, ax
mov edx, dword [0x68910c]
movzx edx, word [edx]
mov eax, dword [0x68910c]
add eax, 6
call fcn.005b18d4
mov eax, dword [0x68910c]
mov byte [eax + 8], 0
jmp case.0x51038b.5039
call sub.kernel32.dll_GetTickCount
mov edx, dword [0x689150]
mov edx, dword [edx]
mov dword [edx + 0x1f48], eax
mov eax, dword [0x688a9c]
mov eax, dword [eax]
mov edx, dword [ebp - 0x76]
mov dword [eax + 0xb8], edx
movzx eax, word [ebp - 0x6c]
movzx edx, word [ebp - 0x68]
shl edx, 0x10
or eax, edx
mov edx, dword [0x6889a0]
mov dword [edx], eax
mov eax, dword [0x68910c]
mov byte [eax + 8], 0
jmp case.0x51038b.5039
mov eax, dword [0x68910c]
mov byte [eax + 8], 0
call sub.kernel32.dll_GetTickCount
mov edx, dword [0x689150]
mov edx, dword [edx]
mov dword [edx + 0x1f48], eax
mov eax, dword [ebp - 0x76]
cmp eax, 5
ja case.0x51038b.5039
jmp dword [eax*4 + 0x514f6e]
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x5183a8
call fcn.00553480
jmp case.0x51038b.5039
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x5183c8
call fcn.00553480
jmp case.0x51038b.5039
push 0x46
push 0
push 0
push 0x5183f0
mov eax, dword [0x688528]
push dword [eax]
push 0x518410
lea eax, [ebp - 0x61c]
mov edx, 3
call fcn.004054fc
mov edx, dword [ebp - 0x61c]
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
call fcn.00553480
jmp case.0x51038b.5039
push 0x46
push 0
push 0
push 0x5183f0
mov eax, dword [0x688a10]
push dword [eax]
push 0x518410
lea eax, [ebp - 0x620]
mov edx, 3
call fcn.004054fc
mov edx, dword [ebp - 0x620]
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
call fcn.00553480
jmp case.0x51038b.5039
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x518428
call fcn.00553480
jmp case.0x51038b.5039
mov eax, dword [ebp - 0x6c]
push eax
mov eax, dword [ebp - 0x76]
push eax
mov ecx, dword [ebp - 0x70]
mov edx, dword [ebp - 0x68]
mov eax, edi
call fcn.00521a40
jmp case.0x51038b.5039
lea edx, [ebp - 0x76]
mov ecx, dword [ebp - 0xc]
mov eax, edi
call fcn.0052156c
jmp case.0x51038b.5039
mov eax, dword [0x6890c8]
inc dword [eax]
jmp case.0x51038b.5039
mov ecx, dword [ebp - 0xc]
lea edx, [ebp - 0x76]
mov eax, edi
call fcn.0051f698
jmp case.0x51038b.5039
mov ecx, dword [ebp - 0xc]
lea edx, [ebp - 0x76]
mov eax, edi
call fcn.0051f46c
jmp case.0x51038b.5039
mov edx, dword [ebp - 0xc]
mov eax, edi
call fcn.0051f874
jmp case.0x51038b.5039
mov eax, dword [0x688e48]
mov edx, dword [ebp - 0x76]
mov dword [eax], edx
cmp dword [ebp - 0xc], 0
je 0x51511b
push 1
push 0
lea edx, [ebp - 0x624]
mov eax, dword [ebp - 0xc]
call fcn.004adf90
mov edx, dword [ebp - 0x624]
mov ecx, 0xffffff
mov eax, dword [0x69458c]
call fcn.0053ca7c
call sub.kernel32.dll_GetTickCount
mov edx, dword [0x688288]
mov dword [edx], eax
jmp case.0x51038b.5039
call sub.kernel32.dll_GetTickCount
mov edx, dword [0x688288]
mov dword [edx], eax
mov eax, dword [0x688e48]
xor ecx, ecx
mov dl, 1
call fcn.00488718
jmp case.0x51038b.5039
call sub.kernel32.dll_GetTickCount
mov edx, dword [0x688288]
mov dword [edx], eax
mov eax, dword [ebp - 0x76]
add eax, 4
cmp eax, 6
ja case.0x51038b.5039
jmp dword [eax*4 + 0x515170]
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x518450
call fcn.00553480
jmp case.0x51038b.5039
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x518480
call fcn.00553480
jmp case.0x51038b.5039
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x5184c0
call fcn.00553480
jmp case.0x51038b.5039
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x5184e4
call fcn.00553480
jmp case.0x51038b.5039
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x518514
call fcn.00553480
jmp case.0x51038b.5039
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x518548
call fcn.00553480
jmp case.0x51038b.5039
call sub.kernel32.dll_GetTickCount
mov edx, dword [0x688288]
mov dword [edx], eax
lea edx, [ebp - 0x76]
mov ecx, dword [ebp - 0xc]
mov eax, edi
call fcn.0051fd94
jmp case.0x51038b.5039
call sub.kernel32.dll_GetTickCount
mov edx, dword [0x688288]
mov dword [edx], eax
mov eax, dword [ebp - 0x76]
add eax, 5
cmp eax, 4
ja case.0x51038b.5039
jmp dword [eax*4 + 0x5152a0]
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x51856c
call fcn.00553480
jmp case.0x51038b.5039
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x51859c
call fcn.00553480
jmp case.0x51038b.5039
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x5185d0
call fcn.00553480
jmp case.0x51038b.5039
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x518608
call fcn.00553480
jmp case.0x51038b.5039
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x518630
call fcn.00553480
jmp case.0x51038b.5039
call sub.kernel32.dll_GetTickCount
mov edx, dword [0x688288]
mov dword [edx], eax
lea edx, [ebp - 0x76]
mov ecx, dword [ebp - 0xc]
mov eax, edi
call fcn.0052044c
jmp case.0x51038b.5039
call sub.kernel32.dll_GetTickCount
mov edx, dword [0x688288]
mov dword [edx], eax
mov eax, dword [ebp - 0x76]
sub eax, 0xfffffffd
je 0x5153e7
dec eax
je 0x5153c4
dec eax
jne case.0x51038b.5039
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x518654
call fcn.00553480
jmp case.0x51038b.5039
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x518684
call fcn.00553480
jmp case.0x51038b.5039
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x5186b0
call fcn.00553480
jmp case.0x51038b.5039
lea edx, [ebp - 0x628]
mov eax, dword [ebp - 0xc]
call fcn.004adf90
mov ecx, dword [ebp - 0x628]
lea edx, [ebp - 0x76]
mov eax, edi
call fcn.0051fae0
jmp case.0x51038b.5039
mov edx, dword [ebp - 0x76]
mov al, 1
call fcn.0057d644
jmp case.0x51038b.5039
mov eax, dword [0x688e48]
xor ecx, ecx
mov dl, 1
call fcn.00488718
lea edx, [ebp - 0x62c]
mov eax, dword [ebp - 0xc]
call fcn.004adf90
mov ecx, dword [ebp - 0x62c]
lea edx, [ebp - 0x76]
mov eax, edi
call fcn.00520594
jmp case.0x51038b.5039
call sub.kernel32.dll_GetTickCount
mov edx, dword [0x6887fc]
mov dword [edx], eax
lea edx, [ebp - 0x76]
mov ecx, dword [ebp - 0xc]
mov eax, edi
call fcn.005207cc
jmp case.0x51038b.5039
call sub.kernel32.dll_GetTickCount
mov edx, dword [0x6887fc]
mov dword [edx], eax
lea edx, [ebp - 0x76]
mov ecx, dword [ebp - 0xc]
mov eax, edi
call fcn.00520b70
jmp case.0x51038b.5039
call sub.kernel32.dll_GetTickCount
mov edx, dword [0x6887fc]
mov dword [edx], eax
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x5186e4
call fcn.00553480
jmp case.0x51038b.5039
call sub.kernel32.dll_GetTickCount
mov edx, dword [0x6887fc]
mov dword [edx], eax
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x518708
call fcn.00553480
jmp case.0x51038b.5039
call sub.kernel32.dll_GetTickCount
mov edx, dword [0x6887fc]
mov dword [edx], eax
lea edx, [ebp - 0x630]
mov eax, dword [ebp - 0xc]
call fcn.004adf90
mov edx, dword [ebp - 0x630]
mov eax, dword [0x688e38]
call fcn.004051ac
mov eax, dword [0x689150]
mov eax, dword [eax]
call fcn.00569f70
jmp case.0x51038b.5039
call fcn.005b22bc
mov eax, dword [0x688800]
cmp byte [eax + 8], 0
je 0x515570
mov eax, dword [0x688800]
add eax, 6
or edx, 0xffffffff
call fcn.005b17a0
mov eax, dword [0x688800]
mov byte [eax + 8], 0
mov eax, dword [0x689140]
cmp dword [eax], 0
jle 0x515598
mov eax, dword [0x689140]
mov eax, dword [eax]
mov edx, dword [0x688a9c]
mov edx, dword [edx]
add dword [edx + 0xb8], eax
mov eax, dword [0x689140]
xor edx, edx
mov dword [eax], edx
mov eax, dword [0x689150]
mov eax, dword [eax]
call fcn.0056a0c0
call fcn.005b2014
jmp case.0x51038b.5039
call sub.kernel32.dll_GetTickCount
mov edx, dword [0x688d24]
mov dword [edx], eax
mov eax, dword [0x688800]
cmp byte [eax + 8], 0
je 0x5155dc
mov eax, dword [0x688800]
add eax, 6
call fcn.005b226c
mov eax, dword [0x688800]
mov byte [eax + 8], 0
call fcn.005b2014
jmp case.0x51038b.5039
call sub.kernel32.dll_GetTickCount
mov edx, dword [0x688d24]
mov dword [edx], eax
mov eax, dword [0x688800]
cmp byte [eax + 8], 0
je 0x51561c
mov edx, dword [0x688800]
mov edx, dword [edx]
mov eax, dword [0x688800]
add eax, 6
call fcn.005b17a0
mov eax, dword [0x688800]
mov byte [eax + 8], 0
call fcn.005b2014
jmp case.0x51038b.5039
call sub.kernel32.dll_GetTickCount
mov edx, dword [0x688d24]
mov dword [edx], eax
mov eax, dword [0x688800]
cmp byte [eax + 8], 0
je 0x515657
mov eax, dword [0x688800]
add eax, 6
or edx, 0xffffffff
call fcn.005b17a0
mov eax, dword [0x688800]
mov byte [eax + 8], 0
call fcn.005b2014
jmp case.0x51038b.5039
call sub.kernel32.dll_GetTickCount
mov edx, dword [0x688d24]
mov dword [edx], eax
mov eax, dword [0x688800]
cmp byte [eax + 8], 0
je 0x51568f
mov eax, dword [0x688800]
add eax, 6
call fcn.005b226c
mov eax, dword [0x688800]
mov byte [eax + 8], 0
call fcn.005b2014
jmp case.0x51038b.5039
mov edx, dword [ebp - 0xc]
mov eax, edi
call fcn.00520ff4
jmp case.0x51038b.5039
mov edx, dword [ebp - 0xc]
mov eax, edi
call fcn.00521094
jmp case.0x51038b.5039
mov eax, dword [0x689140]
mov edx, dword [ebp - 0x76]
mov dword [eax], edx
movzx eax, word [ebp - 0x70]
movzx edx, word [ebp - 0x6c]
shl edx, 0x10
or eax, edx
mov edx, dword [0x688a9c]
mov edx, dword [edx]
mov dword [edx + 0xb8], eax
call sub.kernel32.dll_GetTickCount
mov edx, dword [0x688d24]
mov dword [edx], eax
jmp case.0x51038b.5039
mov eax, dword [0x689140]
mov edx, dword [ebp - 0x76]
mov dword [eax], edx
movzx eax, word [ebp - 0x70]
movzx edx, word [ebp - 0x6c]
shl edx, 0x10
or eax, edx
mov edx, dword [0x688a9c]
mov edx, dword [edx]
mov dword [edx + 0xb8], eax
call sub.kernel32.dll_GetTickCount
mov edx, dword [0x688d24]
mov dword [edx], eax
jmp case.0x51038b.5039
mov eax, dword [0x688224]
mov edx, dword [ebp - 0x76]
mov dword [eax], edx
mov eax, 0x6a
call fcn.005ac880
jmp case.0x51038b.5039
mov eax, dword [ebp - 0x76]
dec eax
je 0x51574c
dec eax
je 0x5157b7
jmp 0x5157e8
mov eax, dword [0x689150]
mov eax, dword [eax]
mov eax, dword [eax + 0x54c]
mov byte [eax + 0x338], 1
mov eax, dword [0x689150]
mov eax, dword [eax]
mov eax, dword [eax + 0x54c]
cmp byte [eax + 0x338], 0
je 0x515780
mov eax, dword [0x688f98]
cmp byte [eax], 0
jne 0x515784
xor eax, eax
jmp 0x515786
mov al, 1
mov edx, dword [0x689150]
mov edx, dword [edx]
mov edx, dword [edx + 0x540]
mov byte [edx + 0x316], al
push 1
push 0
mov ecx, 0x32f4
mov edx, 0x518738
mov eax, dword [0x69458c]
call fcn.0053ca7c
jmp case.0x51038b.5039
mov eax, dword [0x689150]
mov eax, dword [eax]
mov eax, dword [eax + 0x550]
mov byte [eax + 0x338], 1
push 1
push 0
mov ecx, 0x32f4
mov edx, 0x518754
mov eax, dword [0x69458c]
call fcn.0053ca7c
jmp case.0x51038b.5039
mov eax, dword [0x689150]
mov eax, dword [eax]
call fcn.0056a0c0
push 1
push 0
mov ecx, 0x32f4
mov edx, 0x518770
mov eax, dword [0x69458c]
call fcn.0053ca7c
jmp case.0x51038b.5039
mov eax, dword [0x688260]
mov edx, dword [ebp - 0x76]
mov dword [eax], edx
mov eax, dword [ebp - 0x70]
dec eax
je 0x515833
dec eax
je 0x515856
dec eax
je 0x51589b
dec eax
je 0x5158e0
jmp case.0x51038b.5039
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517ffc]
mov edx, 0x518784
call fcn.00553480
jmp case.0x51038b.5039
push 0x46
push 0
push 0
push 0x518304
mov eax, dword [0x688528]
push dword [eax]
push 0x5187a8
lea eax, [ebp - 0x634]
mov edx, 3
call fcn.004054fc
mov edx, dword [ebp - 0x634]
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517ffc]
call fcn.00553480
jmp case.0x51038b.5039
push 0x46
push 0
push 0
push 0x5187b4
mov eax, dword [0x688528]
push dword [eax]
push 0x5187d0
lea eax, [ebp - 0x638]
mov edx, 3
call fcn.004054fc
mov edx, dword [ebp - 0x638]
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517ffc]
call fcn.00553480
jmp case.0x51038b.5039
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517ffc]
mov edx, 0x5187e0
call fcn.00553480
jmp case.0x51038b.5039
mov eax, dword [0x688260]
mov edx, dword [ebp - 0x76]
mov dword [eax], edx
mov eax, dword [0x688cb8]
mov byte [eax], 1
cmp byte [ebp - 0x70], 1
sete al
mov edx, dword [0x688cb8]
mov byte [edx + 1], al
movzx eax, word [ebp - 0x70]
shr eax, 8
cmp al, 1
sete al
mov edx, dword [0x688cb8]
mov byte [edx + 2], al
cmp byte [ebp - 0x6c], 1
sete al
mov edx, dword [0x688cb8]
mov byte [edx + 3], al
movzx eax, word [ebp - 0x6c]
shr eax, 8
cmp al, 1
sete al
mov edx, dword [0x688cb8]
mov byte [edx + 4], al
cmp dword [ebp - 0xc], 0
je 0x51597b
mov edx, dword [0x68839c]
add edx, 8
mov ecx, 0x20
mov eax, dword [ebp - 0xc]
call fcn.004ae020
mov eax, dword [0x688de8]
mov eax, dword [eax]
mov eax, dword [eax + 0x4dc]
mov dl, 1
call fcn.00493bf0
call sub.kernel32.dll_GetTickCount
mov edx, dword [0x689150]
mov edx, dword [edx]
mov dword [edx + 0x1f48], eax
jmp case.0x51038b.5039
cmp dword [ebp - 0x68], 1
jne 0x515aca
mov eax, dword [ebp - 0x70]
push eax
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x518804]
mov edx, 0x518810
call fcn.00553480
cmp eax, 6
jne 0x515b6d
lea edx, [ebp - 0xc]
mov eax, dword [0x689150]
mov eax, dword [eax]
mov eax, dword [eax + 0xab0]
call fcn.00409d0c
cmp dword [ebp - 0xc], 0
je 0x515a89
mov eax, dword [ebp - 0x70]
push eax
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x518804]
mov edx, 0x51883c
call fcn.00553480
cmp eax, 6
jne 0x515b6d
lea edx, [ebp - 0x63c]
mov eax, dword [0x689150]
mov eax, dword [eax]
mov eax, dword [eax + 0xab0]
call fcn.00409d0c
mov eax, dword [ebp - 0x63c]
mov edx, dword [ebp - 0xc]
call fcn.00405590
jne 0x515a66
push 0
push 0
push 0
mov eax, dword [ebp - 0xc]
push eax
mov ecx, dword [ebp - 0x6c]
mov edx, dword [ebp - 0x76]
mov eax, edi
call fcn.0050a960
jmp 0x515b6d
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517ffc]
mov edx, 0x518858
call fcn.00553480
jmp 0x515b6d
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x518870]
mov edx, 0x51887c
call fcn.00553480
cmp eax, 6
jne 0x515b6d
push 0
push 0
push 0
push 0
mov ecx, dword [ebp - 0x6c]
mov edx, dword [ebp - 0x76]
mov eax, edi
call fcn.0050a960
jmp 0x515b6d
mov eax, dword [ebp - 0x70]
push eax
push 0
push 0
lea edx, [ebp - 0x640]
mov eax, dword [ebp - 0xc]
call fcn.004adf90
mov edx, dword [ebp - 0x640]
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x518804]
call fcn.00553480
cmp eax, 6
jne 0x515b6d
lea edx, [ebp - 0xc]
mov eax, dword [0x689150]
mov eax, dword [eax]
mov eax, dword [eax + 0xab0]
call fcn.00409d0c
cmp dword [ebp - 0xc], 0
je 0x515b6d
push 0
push 0
push 0
lea edx, [ebp - 0x64c]
mov eax, dword [0x688a9c]
mov eax, dword [eax]
mov eax, dword [eax + 4]
call fcn.0040a028
mov ecx, dword [ebp - 0x64c]
lea eax, [ebp - 0x648]
mov edx, dword [ebp - 0xc]
call fcn.00405480
mov eax, dword [ebp - 0x648]
lea edx, [ebp - 0x644]
call fcn.00487ec0
mov eax, dword [ebp - 0x644]
push eax
mov ecx, dword [ebp - 0x6c]
mov edx, dword [ebp - 0x76]
mov eax, edi
call fcn.0050a960
call sub.kernel32.dll_GetTickCount
mov edx, dword [0x689150]
mov edx, dword [edx]
mov dword [edx + 0x1f48], eax
jmp case.0x51038b.5039
lea edx, [ebp - 0x650]
mov eax, dword [ebp - 0xc]
call fcn.004adf90
mov ecx, dword [ebp - 0x650]
lea edx, [ebp - 0x76]
mov eax, dword [0x688900]
mov eax, dword [eax]
call fcn.004dca2c
jmp case.0x51038b.5039
lea edx, [ebp - 0x76]
mov ecx, dword [ebp - 0xc]
mov eax, edi
call fcn.00521134
jmp case.0x51038b.5039
mov eax, dword [0x688a9c]
cmp dword [eax], 0
je case.0x51038b.5039
push 0
lea eax, [ebp - 0x654]
push eax
lea edx, [ebp - 0x658]
mov eax, dword [ebp - 0xc]
call fcn.004adf90
mov eax, dword [ebp - 0x658]
mov byte [ebp - 0x230], 0x2f
lea ecx, [ebp - 0x230]
lea edx, [ebp - 0x1c]
call fcn.00488938
mov edx, dword [ebp - 0x654]
lea eax, [ebp - 0xc]
call fcn.004051f0
cmp dword [ebp - 0xc], 0
je case.0x51038b.5039
cmp dword [ebp - 0x1c], 0
je case.0x51038b.5039
mov eax, dword [ebp - 0x1c]
push eax
mov eax, dword [ebp - 0xc]
push eax
mov eax, dword [0x688900]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x76]
movzx edx, byte [ebp - 0x70]
call fcn.004dcb48
jmp case.0x51038b.5039
mov eax, dword [ebp - 0x76]
add eax, 2
cmp eax, 7
ja case.0x51038b.5039
jmp dword [eax*4 + 0x515c57]
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x5188b0
call fcn.00553480
jmp case.0x51038b.5039
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x5188e4
call fcn.00553480
jmp case.0x51038b.5039
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x518928
call fcn.00553480
jmp case.0x51038b.5039
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x518954
call fcn.00553480
jmp case.0x51038b.5039
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x518980
call fcn.00553480
jmp case.0x51038b.5039
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x5189ac
call fcn.00553480
jmp case.0x51038b.5039
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x5189d0
call fcn.00553480
jmp case.0x51038b.5039
mov eax, dword [0x688a9c]
cmp dword [eax], 0
je case.0x51038b.5039
lea edx, [ebp - 0x65c]
mov eax, dword [ebp - 0xc]
call fcn.004adf90
mov edx, dword [ebp - 0x65c]
mov eax, dword [0x688900]
mov eax, dword [eax]
call fcn.004e2538
jmp case.0x51038b.5039
mov eax, dword [0x6884d0]
mov edx, dword [ebp - 0x76]
mov dword [eax + 0x29], edx
mov eax, dword [ebp - 0x68]
dec eax
je 0x515dc2
dec eax
je 0x515de5
dec eax
je 0x515e2a
dec eax
je 0x515e4d
jmp case.0x51038b.5039
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x5189f4
call fcn.00553480
jmp case.0x51038b.5039
push 0x46
push 0
push 0
push 0x518a18
mov eax, dword [0x688528]
push dword [eax]
push 0x518a34
lea eax, [ebp - 0x660]
mov edx, 3
call fcn.004054fc
mov edx, dword [ebp - 0x660]
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
call fcn.00553480
jmp case.0x51038b.5039
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x518a44
call fcn.00553480
jmp case.0x51038b.5039
push 0x46
push 0
push 0
push 0x518a68
mov eax, dword [0x688528]
push dword [eax]
push 0x5187a8
lea eax, [ebp - 0x664]
mov edx, 3
call fcn.004054fc
mov edx, dword [ebp - 0x664]
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
call fcn.00553480
jmp case.0x51038b.5039
mov eax, dword [ebp - 0x76]
dec eax
je 0x515ea6
dec eax
je 0x515ec9
dec eax
je 0x515eec
dec eax
je 0x515f0f
jmp case.0x51038b.5039
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x5189f4
call fcn.00553480
jmp case.0x51038b.5039
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x518a8c
call fcn.00553480
jmp case.0x51038b.5039
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x518ab4
call fcn.00553480
jmp case.0x51038b.5039
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x518ae0
call fcn.00553480
jmp case.0x51038b.5039
mov eax, dword [ebp - 0x76]
add eax, 0xb
cmp eax, 9
ja case.0x51038b.5039
jmp dword [eax*4 + 0x515f48]
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x518b14
call fcn.00553480
jmp case.0x51038b.5039
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x518b3c
call fcn.00553480
jmp case.0x51038b.5039
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x518b64
call fcn.00553480
jmp case.0x51038b.5039
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x518b14
call fcn.00553480
jmp case.0x51038b.5039
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x518b98
call fcn.00553480
jmp case.0x51038b.5039
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x518bc4
call fcn.00553480
jmp case.0x51038b.5039
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x518bec
call fcn.00553480
jmp case.0x51038b.5039
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x518c44
call fcn.00553480
jmp case.0x51038b.5039
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x518c78
call fcn.00553480
jmp case.0x51038b.5039
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x518ca8
call fcn.00553480
jmp case.0x51038b.5039
mov eax, dword [ebp - 0x76]
add eax, 5
cmp eax, 4
ja case.0x51038b.5039
jmp dword [eax*4 + 0x5160e4]
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x518cdc
call fcn.00553480
jmp case.0x51038b.5039
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x518d08
call fcn.00553480
jmp case.0x51038b.5039
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x518d38
call fcn.00553480
jmp case.0x51038b.5039
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x518d6c
call fcn.00553480
jmp case.0x51038b.5039
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x518d9c
call fcn.00553480
jmp case.0x51038b.5039
mov eax, dword [ebp - 0x76]
sub eax, 0xfffffffd
je 0x5161ff
dec eax
je 0x5161dc
dec eax
jne case.0x51038b.5039
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x518dd0
call fcn.00553480
jmp case.0x51038b.5039
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x518df0
call fcn.00553480
jmp case.0x51038b.5039
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x518e20
call fcn.00553480
jmp case.0x51038b.5039
call sub.kernel32.dll_GetTickCount
mov edx, dword [0x689150]
mov edx, dword [edx]
mov dword [edx + 0x1f48], eax
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x518e40
call fcn.00553480
jmp case.0x51038b.5039
call sub.kernel32.dll_GetTickCount
mov edx, dword [0x689150]
mov edx, dword [edx]
mov dword [edx + 0x1f48], eax
mov eax, dword [ebp - 0x76]
add eax, 7
cmp eax, 6
ja case.default.0x51627a
jmp dword [eax*4 + 0x516281]
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x518e64
call fcn.00553480
jmp case.0x51038b.5039
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x518e8c
call fcn.00553480
jmp case.0x51038b.5039
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x518eac
call fcn.00553480
jmp case.0x51038b.5039
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517ffc]
mov edx, 0x518edc
call fcn.00553480
jmp case.0x51038b.5039
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x518f30
call fcn.00553480
jmp case.0x51038b.5039
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x518f5c
call fcn.00553480
jmp case.0x51038b.5039
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x518f8c
call fcn.00553480
jmp case.0x51038b.5039
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x518fbc
call fcn.00553480
jmp case.0x51038b.5039
call sub.kernel32.dll_GetTickCount
mov edx, dword [0x689150]
mov edx, dword [edx]
mov dword [edx + 0x1f48], eax
cmp dword [ebp - 0xc], 0
je case.0x51038b.5039
push 0x46
push 0
push 0
lea edx, [ebp - 0x668]
mov eax, dword [ebp - 0xc]
call fcn.004adf90
mov edx, dword [ebp - 0x668]
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
call fcn.00553480
jmp case.0x51038b.5039
mov eax, dword [0x688de8]
mov eax, dword [eax]
mov eax, dword [eax + 0x464]
mov byte [eax + 0x316], 1
mov eax, dword [0x688de8]
mov eax, dword [eax]
mov eax, dword [eax + 0x464]
mov edx, 0x518fe0
call fcn.004922a8
mov eax, dword [0x689150]
mov eax, dword [eax]
mov eax, dword [eax + 0x688]
mov byte [eax + 0x316], 1
push 0x46
push 0
push 0
lea edx, [ebp - 0x66c]
mov eax, dword [ebp - 0xc]
call fcn.004adf90
mov edx, dword [ebp - 0x66c]
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517ffc]
call fcn.00553480
jmp case.0x51038b.5039
mov eax, dword [ebp - 0x68]
sub eax, 1
jb 0x516492
je 0x5164ea
dec eax
je 0x516679
dec eax
je 0x5167ce
jmp case.0x51038b.5039
mov eax, dword [0x688de8]
mov eax, dword [eax]
mov eax, dword [eax + 0x460]
mov dl, 1
call fcn.00493bf0
mov eax, dword [0x688de8]
mov eax, dword [eax]
mov eax, dword [eax + 0x464]
mov byte [eax + 0x316], 1
mov eax, dword [0x688de8]
mov eax, dword [eax]
mov eax, dword [eax + 0x464]
mov edx, 0x518fe0
call fcn.004922a8
mov eax, dword [0x689150]
mov eax, dword [eax]
mov eax, dword [eax + 0x688]
mov byte [eax + 0x316], 1
jmp case.0x51038b.5039
mov eax, dword [0x688de8]
mov eax, dword [eax]
mov eax, dword [eax + 0x464]
mov edx, 0x518fe0
call fcn.004922a8
mov eax, dword [0x688de8]
mov eax, dword [eax]
mov eax, dword [eax + 0x464]
mov byte [eax + 0x316], 1
lea edx, [ebp - 0x670]
mov eax, dword [ebp - 0xc]
call fcn.004adf90
mov edx, dword [ebp - 0x670]
lea eax, [ebp - 0x420]
mov ecx, 0xff
call fcn.00405404
lea edx, [ebp - 0x420]
mov eax, dword [0x688c30]
add eax, 0x89
mov cl, 0x10
call fcn.0040396c
mov eax, dword [0x689150]
mov eax, dword [eax]
mov eax, dword [eax + 0x688]
mov byte [eax + 0x316], 0
mov eax, dword [0x688de8]
mov eax, dword [eax]
cmp dword [eax + 0x6e8], 0
je 0x516642
mov eax, dword [0x689144]
push dword [eax]
lea eax, [ebp - 0x678]
mov edx, dword [0x688c30]
add edx, 0x89
call fcn.004053cc
push dword [ebp - 0x678]
push 0x517e80
lea eax, [ebp - 0x674]
mov edx, 3
call fcn.004054fc
mov edx, dword [ebp - 0x674]
mov eax, dword [0x688de8]
mov eax, dword [eax]
mov eax, dword [eax + 0x6e8]
mov ecx, dword [eax]
call dword [ecx + 0x50]
mov eax, dword [0x688de8]
mov eax, dword [eax]
mov eax, dword [eax + 0x6e8]
call fcn.0040432c
mov eax, dword [0x688de8]
mov eax, dword [eax]
xor edx, edx
mov dword [eax + 0x6e8], edx
mov eax, dword [0x689144]
push dword [eax]
lea eax, [ebp - 0x680]
mov edx, dword [0x688c30]
add edx, 0x89
call fcn.004053cc
push dword [ebp - 0x680]
push 0x517e80
lea eax, [ebp - 0x67c]
mov edx, 3
call fcn.004054fc
mov edx, dword [ebp - 0x67c]
mov eax, dword [0x689150]
mov eax, dword [eax]
lea ecx, [eax + 0x215c]
mov eax, dword [0x689150]
mov eax, dword [eax]
call fcn.0056b884
mov eax, dword [0x688de8]
mov eax, dword [eax]
mov eax, dword [eax + 0x460]
xor edx, edx
call fcn.00493bf0
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517ffc]
mov edx, 0x518ff4
call fcn.00553480
jmp case.0x51038b.5039
mov ebx, dword [ebp - 0xc]
test ebx, ebx
je 0x516685
sub ebx, 4
mov ebx, dword [ebx]
mov eax, dword [ebp - 0x76]
add eax, eax
add eax, eax
mov dword [ebp - 0x684], eax
fild dword [ebp - 0x684]
fdiv dword [0x519004]
add esp, 0xfffffff8
fstp qword [esp]
wait
call fcn.00488758
cmp ebx, eax
jne case.0x51038b.5039
mov eax, dword [0x688c30]
cmp byte [eax + 0x89], 0
je case.0x51038b.5039
mov eax, dword [ebp - 0x76]
call fcn.00402f54
mov dword [ebp - 0x40], eax
push 0xffff
mov eax, dword [0x689144]
push dword [eax]
lea eax, [ebp - 0x68c]
mov edx, dword [0x688c30]
add edx, 0x89
call fcn.004053cc
push dword [ebp - 0x68c]
push 0x517e80
lea eax, [ebp - 0x688]
mov edx, 3
call fcn.004054fc
mov ecx, dword [ebp - 0x688]
mov dl, 1
mov eax, dword [0x4182c0]
call fcn.0041c9b4
mov dword [ebp - 0x3c], eax
xor eax, eax
push ebp
push 0x51676a
push dword fs:[eax]
mov dword fs:[eax], esp
mov ecx, dword [ebp - 0x76]
mov edx, dword [ebp - 0x40]
mov eax, dword [ebp - 0xc]
call fcn.004ae020
mov edx, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x76]
mov eax, dword [ebp - 0x3c]
mov ebx, dword [eax]
call dword [ebx + 0x10]
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x516771
mov eax, dword [ebp - 0x3c]
call fcn.0040432c
mov eax, dword [ebp - 0x40]
call fcn.00402f70
ret
mov ebx, dword [ebp - 0xc]
test ebx, ebx
je 0x5167da
sub ebx, 4
mov ebx, dword [ebx]
mov eax, dword [ebp - 0x76]
add eax, eax
add eax, eax
mov dword [ebp - 0x684], eax
fild dword [ebp - 0x684]
fdiv dword [0x519004]
add esp, 0xfffffff8
fstp qword [esp]
wait
call fcn.00488758
cmp ebx, eax
jne case.0x51038b.5039
mov eax, dword [0x689150]
mov eax, dword [eax]
cmp byte [eax + 0x1cb3], 0x10
jne case.0x51038b.5039
mov eax, dword [ebp - 0x76]
call fcn.00402f54
mov dword [ebp - 0x40], eax
push 0xffff
mov eax, dword [0x689144]
push dword [eax]
lea eax, [ebp - 0x69c]
mov edx, dword [0x689150]
mov edx, dword [edx]
add edx, 0x1cb3
call fcn.004053cc
push dword [ebp - 0x69c]
push 0x517e80
lea eax, [ebp - 0x698]
mov edx, 3
call fcn.004054fc
mov ecx, dword [ebp - 0x698]
mov dl, 1
mov eax, dword [0x4182c0]
call fcn.0041c9b4
mov dword [ebp - 0x3c], eax
xor eax, eax
push ebp
push 0x5168c3
push dword fs:[eax]
mov dword fs:[eax], esp
mov ecx, dword [ebp - 0x76]
mov edx, dword [ebp - 0x40]
mov eax, dword [ebp - 0xc]
call fcn.004ae020
mov edx, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x76]
mov eax, dword [ebp - 0x3c]
mov ebx, dword [eax]
call dword [ebx + 0x10]
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x5168ca
mov eax, dword [ebp - 0x3c]
call fcn.0040432c
mov eax, dword [ebp - 0x40]
call fcn.00402f70
ret
cmp dword [ebp - 0xc], 0
je case.0x51038b.5039
push 0x46
push 0
push 0
lea edx, [ebp - 0x6a8]
mov eax, dword [ebp - 0xc]
call fcn.004adf90
mov edx, dword [ebp - 0x6a8]
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
call fcn.00553480
jmp case.0x51038b.5039
call sub.kernel32.dll_GetTickCount
mov edx, dword [0x689150]
mov edx, dword [edx]
mov dword [edx + 0x1f48], eax
jmp case.0x51038b.5039
call sub.kernel32.dll_GetTickCount
mov edx, dword [0x689150]
mov edx, dword [edx]
mov dword [edx + 0x1f48], eax
jmp case.0x51038b.5039
mov ebx, dword [ebp - 0xc]
test ebx, ebx
je 0x5169a1
sub ebx, 4
mov ebx, dword [ebx]
lea eax, [ebp - 0x10]
push eax
push 0x40355555
push 0x55555555
call fcn.00488758
mov edx, eax
inc edx
mov ecx, ebx
mov eax, dword [ebp - 0xc]
call fcn.00405660
lea edx, [ebp - 0x91]
mov ecx, 0x10
mov eax, dword [ebp - 0xc]
call fcn.004ae020
lea edx, [ebp - 0x18]
mov eax, dword [ebp - 0x10]
call fcn.004adf90
mov eax, dword [0x689150]
mov eax, dword [eax]
mov edx, dword [ebp - 0x70]
mov dword [eax + 0x988], edx
movzx eax, byte [ebp - 0x91]
mov edx, dword [0x689150]
mov edx, dword [edx]
mov dword [edx + 0x990], eax
movzx eax, word [ebp - 0x91]
shr eax, 8
movzx eax, al
mov edx, dword [0x689150]
mov edx, dword [edx]
mov dword [edx + 0x9ac], eax
mov eax, dword [ebp - 0x91]
shr eax, 0x10
movzx eax, al
mov edx, dword [0x689150]
mov edx, dword [edx]
mov dword [edx + 0x9c8], eax
mov eax, dword [ebp - 0x91]
shr eax, 0x10
movzx eax, ax
shr eax, 8
movzx eax, al
mov edx, dword [0x689150]
mov edx, dword [edx]
mov dword [edx + 0x9e4], eax
movzx eax, byte [ebp - 0x8d]
mov edx, dword [0x689150]
mov edx, dword [edx]
mov dword [edx + 0xa00], eax
movzx eax, word [ebp - 0x8d]
shr eax, 8
movzx eax, al
mov edx, dword [0x689150]
mov edx, dword [edx]
mov dword [edx + 0xa1c], eax
mov eax, dword [ebp - 0x8d]
shr eax, 0x10
movzx eax, al
mov edx, dword [0x689150]
mov edx, dword [edx]
mov dword [edx + 0xa38], eax
mov eax, dword [ebp - 0x8d]
shr eax, 0x10
movzx eax, ax
shr eax, 8
movzx eax, al
mov edx, dword [0x689150]
mov edx, dword [edx]
mov dword [edx + 0xa54], eax
movzx eax, byte [ebp - 0x89]
mov edx, dword [0x689150]
mov edx, dword [edx]
mov dword [edx + 0xa70], eax
movzx eax, word [ebp - 0x89]
shr eax, 8
movzx eax, al
mov edx, dword [0x689150]
mov edx, dword [edx]
mov dword [edx + 0xa8c], eax
mov eax, dword [0x689150]
mov eax, dword [eax]
mov eax, dword [eax + 0x988]
dec eax
sub eax, 3
jae 0x516b21
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x519008]
xor edx, edx
call fcn.00553480
mov eax, dword [0x689150]
mov eax, dword [eax]
xor edx, edx
mov dword [eax + 0x988], edx
mov ecx, dword [ebp - 0x18]
mov edx, dword [ebp - 0x76]
mov eax, edi
call fcn.0050c194
jmp case.0x51038b.5039
mov edx, dword [ebp - 0xc]
mov eax, edi
call fcn.00522600
jmp case.0x51038b.5039
lea edx, [ebp - 0x76]
mov ecx, dword [ebp - 0xc]
mov eax, edi
call fcn.00522628
jmp case.0x51038b.5039
lea edx, [ebp - 0x6ac]
mov eax, dword [ebp - 0xc]
call fcn.004adf90
mov edx, dword [ebp - 0x6ac]
lea eax, [ebp - 0xc]
call fcn.004051f0
lea eax, [ebp - 0x6b0]
push eax
mov ecx, 0x519014
mov edx, 0x519020
mov eax, dword [ebp - 0xc]
call fcn.00434528
mov edx, dword [ebp - 0x6b0]
lea eax, [ebp - 0xc]
call fcn.004051f0
lea eax, [ebp - 0x6b4]
push eax
mov ecx, 0x51902c
mov edx, 0x519038
mov eax, dword [ebp - 0xc]
call fcn.00434528
mov edx, dword [ebp - 0x6b4]
lea eax, [ebp - 0xc]
call fcn.004051f0
mov eax, dword [0x6884f8]
mov eax, dword [eax]
mov eax, dword [eax + 0x15e4]
xor ecx, ecx
mov edx, dword [ebp - 0xc]
mov ebx, dword [eax]
call dword [ebx + 0x3c]
mov eax, dword [0x6884f8]
mov eax, dword [eax]
mov eax, dword [eax + 0x360]
mov dl, 1
call fcn.00493bf0
jmp case.0x51038b.5039
lea edx, [ebp - 0x6b8]
mov eax, dword [ebp - 0xc]
call fcn.004adf90
mov edx, dword [ebp - 0x6b8]
lea eax, [ebp - 0xc]
call fcn.004051f0
lea eax, [ebp - 0x6bc]
push eax
mov ecx, 0x519014
mov edx, 0x519020
mov eax, dword [ebp - 0xc]
call fcn.00434528
mov edx, dword [ebp - 0x6bc]
lea eax, [ebp - 0xc]
call fcn.004051f0
lea eax, [ebp - 0x6c0]
push eax
mov ecx, 0x51902c
mov edx, 0x519038
mov eax, dword [ebp - 0xc]
call fcn.00434528
mov edx, dword [ebp - 0x6c0]
lea eax, [ebp - 0xc]
call fcn.004051f0
mov eax, dword [0x6884f8]
mov eax, dword [eax]
mov eax, dword [eax + 0x15e8]
xor ecx, ecx
mov edx, dword [ebp - 0xc]
mov ebx, dword [eax]
call dword [ebx + 0x3c]
mov eax, dword [0x6884f8]
mov eax, dword [eax]
mov eax, dword [eax + 0x424]
mov dl, 1
call fcn.00493bf0
jmp case.0x51038b.5039
lea edx, [ebp - 0x76]
mov ecx, dword [ebp - 0xc]
mov eax, edi
call fcn.0051fa2c
jmp case.0x51038b.5039
lea edx, [ebp - 0x6c4]
mov eax, dword [ebp - 0xc]
call fcn.004adf90
mov ecx, dword [ebp - 0x6c4]
lea edx, [ebp - 0x76]
mov eax, edi
call fcn.0051fba0
jmp case.0x51038b.5039
lea edx, [ebp - 0x76]
mov ecx, dword [ebp - 0xc]
mov eax, edi
call fcn.0051e924
jmp case.0x51038b.5039
lea edx, [ebp - 0x76]
mov ecx, dword [ebp - 0xc]
mov eax, edi
call fcn.0051c658
jmp case.0x51038b.5039
mov eax, dword [ebp - 0x76]
add eax, 0x14
cmp eax, 0x16
ja case.0x516cff.19
jmp dword [eax*4 + 0x516d06]
push 1
push 0
mov ecx, 0xff00
mov edx, 0x519044
mov eax, dword [0x69458c]
call fcn.0053ca7c
jmp case.0x51038b.5039
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x519068
call fcn.00553480
jmp case.0x51038b.5039
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x51907c
call fcn.00553480
jmp case.0x51038b.5039
push 0x46
push 0
push 0
push 0x5190a8
mov eax, dword [0x6885bc]
push dword [eax]
push 0x5190b8
lea eax, [ebp - 0x6c8]
mov edx, 3
call fcn.004054fc
mov edx, dword [ebp - 0x6c8]
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
call fcn.00553480
jmp case.0x51038b.5039
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x5190d4
call fcn.00553480
jmp case.0x51038b.5039
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x5190fc
call fcn.00553480
jmp case.0x51038b.5039
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x519128
call fcn.00553480
jmp case.0x51038b.5039
movzx ebx, word [ebp - 0x70]
movzx eax, word [ebp - 0x6c]
shl eax, 0x10
or ebx, eax
push 0x46
push 0
push 0
lea eax, [ebp - 0x6cc]
push eax
mov dword [ebp - 0x6ec], ebx
mov byte [ebp - 0x6e8], 0
mov eax, dword [0x688cd8]
mov eax, dword [eax]
mov dword [ebp - 0x6e4], eax
mov byte [ebp - 0x6e0], 0xb
mov dword [ebp - 0x6dc], ebx
mov byte [ebp - 0x6d8], 0
mov eax, dword [0x6882c8]
mov eax, dword [eax]
mov dword [ebp - 0x6d4], eax
mov byte [ebp - 0x6d0], 0xb
lea edx, [ebp - 0x6ec]
mov ecx, 3
mov eax, 0x519158
call fcn.0040b0c8
mov edx, dword [ebp - 0x6cc]
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
call fcn.00553480
jmp case.0x51038b.5039
push 0x46
push 0
push 0
push 0x5190a8
mov eax, dword [0x688cd8]
push dword [eax]
push 0x5190b8
lea eax, [ebp - 0x6f0]
mov edx, 3
call fcn.004054fc
mov edx, dword [ebp - 0x6f0]
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
call fcn.00553480
jmp case.0x51038b.5039
push 0x46
push 0
push 0
push 0x5190a8
mov eax, dword [0x688528]
push dword [eax]
push 0x5190b8
lea eax, [ebp - 0x6f4]
mov edx, 3
call fcn.004054fc
mov edx, dword [ebp - 0x6f4]
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
call fcn.00553480
jmp case.0x51038b.5039
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x51917c
call fcn.00553480
jmp case.0x51038b.5039
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x5191a0
call fcn.00553480
jmp case.0x51038b.5039
mov eax, dword [ebp - 0x76]
add eax, 9
cmp eax, 0xa
ja case.0x516fe1.0
jmp dword [eax*4 + 0x516fe8]
push 1
push 0
mov ecx, 0xff00
mov edx, 0x519044
mov eax, dword [0x69458c]
call fcn.0053ca7c
mov eax, dword [0x6890a0]
cmp dword [eax], 0
je case.0x516fe1.0
mov eax, dword [0x6890a0]
mov eax, dword [eax]
movzx edx, word [ebp - 0x68]
mov word [eax + 0x13], dx
jmp case.0x516fe1.0
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x5191bc
call fcn.00553480
jmp case.0x516fe1.0
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x5191f0
call fcn.00553480
jmp case.0x516fe1.0
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x51921c
call fcn.00553480
jmp case.0x516fe1.0
push 0x46
push 0
push 0
push 0x519240
mov eax, dword [0x688cd8]
push dword [eax]
push 0x5190b8
lea eax, [ebp - 0x6f8]
mov edx, 3
call fcn.004054fc
mov edx, dword [ebp - 0x6f8]
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
call fcn.00553480
jmp case.0x516fe1.0
push 0x46
push 0
push 0
push 0x519240
mov eax, dword [0x6885bc]
push dword [eax]
push 0x5190b8
lea eax, [ebp - 0x6fc]
mov edx, 3
call fcn.004054fc
mov edx, dword [ebp - 0x6fc]
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
call fcn.00553480
jmp case.0x516fe1.0
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x519258
call fcn.00553480
jmp case.0x516fe1.0
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x519288
call fcn.00553480
jmp case.0x516fe1.0
push 0x46
push 0
push 0
push 0x519240
mov eax, dword [0x688528]
push dword [eax]
push 0x5190b8
lea eax, [ebp - 0x700]
mov edx, 3
call fcn.004054fc
mov edx, dword [ebp - 0x700]
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
call fcn.00553480
jmp case.0x516fe1.0
push 0x46
push 0
push 0
push 0x5192b8
mov eax, dword [0x688528]
push dword [eax]
push 0x5192d8
lea eax, [ebp - 0x704]
mov edx, 3
call fcn.004054fc
mov edx, dword [ebp - 0x704]
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
call fcn.00553480
mov eax, dword [0x6890a0]
xor edx, edx
mov dword [eax], edx
jmp case.0x51038b.5039
lea edx, [ebp - 0x76]
mov ecx, dword [ebp - 0xc]
mov eax, edi
call fcn.0051d5e8
jmp case.0x51038b.5039
mov eax, dword [0x688900]
mov eax, dword [eax]
mov byte [eax + 0x4479], 0
mov eax, dword [ebp - 0x68]
cmp eax, 0x3e8
jg 0x517259
je 0x517334
dec eax
je 0x517270
dec eax
je 0x517287
dec eax
je 0x51731b
jmp case.0x51038b.5039
sub eax, 0x3e9
je 0x51736b
dec eax
je 0x5173ca
jmp case.0x51038b.5039
mov eax, dword [0x688900]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x6c]
mov edx, dword [ebp - 0x70]
call fcn.004e076c
jmp case.0x51038b.5039
mov eax, dword [0x688900]
mov eax, dword [eax]
mov byte [eax + 0x4479], 1
mov eax, dword [0x688900]
mov eax, dword [eax]
mov edx, dword [ebp - 0x76]
mov dword [eax + 0x4454], edx
movzx eax, word [ebp - 0x70]
movzx edx, word [ebp - 0x6c]
shl edx, 0x10
or eax, edx
mov edx, dword [0x688900]
mov edx, dword [edx]
mov dword [edx + 0x4458], eax
mov eax, dword [0x688900]
mov eax, dword [eax]
mov byte [eax + 0x447a], 1
mov eax, dword [0x688900]
mov eax, dword [eax]
xor edx, edx
mov dword [eax + 0x447c], edx
call sub.kernel32.dll_GetTickCount
add eax, 0x96
mov edx, dword [0x688900]
mov edx, dword [edx]
mov dword [edx + 0x4480], eax
mov eax, dword [0x688900]
mov eax, dword [eax]
imul eax, dword [eax + 0x4470], 0x10d
mov edx, dword [0x688900]
mov edx, dword [edx]
mov byte [edx + eax + 0x37b7], 0
jmp case.0x51038b.5039
mov eax, dword [0x688900]
mov eax, dword [eax]
mov eax, dword [eax + 0x5a0]
xor edx, edx
call fcn.00493bf0
jmp case.0x51038b.5039
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x5192e8
call fcn.00553480
mov eax, dword [0x688900]
mov eax, dword [eax]
mov eax, dword [eax + 0x5a0]
xor edx, edx
call fcn.00493bf0
jmp case.0x51038b.5039
push 0x46
push 0
push 0
push 0x519304
mov eax, dword [0x688528]
push dword [eax]
push 0x519328
mov eax, dword [0x688cd8]
push dword [eax]
push 0x5187d0
lea eax, [ebp - 0x708]
mov edx, 5
call fcn.004054fc
mov edx, dword [ebp - 0x708]
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
call fcn.00553480
mov eax, dword [0x688900]
mov eax, dword [eax]
mov byte [eax + 0x4465], 0
jmp case.0x51038b.5039
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x519338
call fcn.00553480
jmp case.0x51038b.5039
mov eax, dword [ebp - 0x6c]
push eax
mov eax, dword [ebp - 0x68]
push eax
mov eax, dword [ebp - 0xc]
push eax
mov ecx, dword [ebp - 0x70]
mov edx, dword [ebp - 0x76]
mov eax, edi
call fcn.00519ad0
jmp case.0x51038b.5039
push 0x46
push 0
push 0
mov eax, dword [0x689150]
mov eax, dword [eax]
movzx ecx, word [0x517a00]
mov edx, 0x519364
call fcn.00553480
jmp case.0x51038b.5039
lea eax, [ebp - 0x76]
mov edx, dword [ebp - 0xc]
call fcn.004f2f3c
jmp case.0x51038b.5039
mov eax, dword [0x688774]
mov eax, dword [eax]
mov eax, dword [eax + 0x360]
mov eax, dword [eax + 0x3d8]
mov byte [eax + 7], 1
mov eax, dword [ebp - 0x6c]
push eax
lea edx, [ebp - 0x70c]
mov eax, dword [ebp - 0xc]
call fcn.004adf90
mov edx, dword [ebp - 0x70c]
mov eax, dword [0x688de8]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x70]
call fcn.004ce6b0
jmp case.0x51038b.5039
lea edx, [ebp - 0x710]
mov eax, dword [ebp - 0xc]
call fcn.004adf90
mov ecx, dword [ebp - 0x710]
lea edx, [ebp - 0x76]
mov eax, edi
call fcn.0051d834
jmp case.0x51038b.5039
lea edx, [ebp - 0x76]
mov eax, edi
call fcn.0051d8b4
jmp case.0x51038b.5039
mov eax, dword [0x6884f8]
mov eax, dword [eax]
mov eax, dword [eax + 0x3dc]
mov dl, 1
call fcn.00493bf0
mov eax, dword [0x6884f8]
mov eax, dword [eax]
mov eax, dword [eax + 0x3dc]
mov edx, dword [ebp - 0x70]
mov dword [eax + 0xc], edx
mov eax, dword [0x6884f8]
mov eax, dword [eax]
call fcn.004f5de0
mov eax, dword [0x6884f8]
mov eax, dword [eax]
xor edx, edx
call fcn.004fa784
jmp case.0x51038b.5039
cmp dword [ebp - 0x68], 1
sete dl
mov eax, dword [0x688538]
mov eax, dword [eax]
call fcn.00594278
jmp case.0x51038b.5039
lea edx, [ebp - 0x714]
mov eax, dword [ebp - 0xc]
call fcn.004adf90
mov edx, dword [ebp - 0x714]
mov eax, dword [0x6884f8]
mov eax, dword [eax]
mov eax, dword [eax + 0x3fc]
call fcn.004922a8
mov eax, dword [0x6884f8]
mov eax, dword [eax]
mov eax, dword [eax + 0x3fc]
mov dl, 1
call fcn.00493bf0
mov eax, dword [0x689150]
mov eax, dword [eax]
mov eax, dword [eax + 0x4bc]
mov dl, 1
call fcn.00493bf0
jmp case.0x51038b.5039
mov eax, dword [0x688a9c]
cmp dword [eax], 0
je case.0x50fad2.5079
lea edx, [ebp - 0x71c]
movzx eax, word [ebp - 0x72]
call fcn.0040a028
mov ecx, dword [ebp - 0x71c]
lea eax, [ebp - 0x718]
mov edx, 0x519378
call fcn.00405480
mov edx, dword [ebp - 0x718]
mov eax, dword [0x694598]
mov eax, dword [eax + 0x40]
mov eax, dword [eax + 0x270]
mov ecx, dword [eax]
call dword [ecx + 0x38]
lea edx, [ebp - 0x724]
mov eax, dword [ebp - 0x76]
call fcn.0040a028
mov ecx, dword [ebp - 0x724]
lea eax, [ebp - 0x720]
mov edx, 0x519388
call fcn.00405480
mov edx, dword [ebp - 0x720]
mov eax, dword [0x694598]
mov eax, dword [eax + 0x40]
mov eax, dword [eax + 0x270]
mov ecx, dword [eax]
call dword [ecx + 0x38]
mov eax, dword [ebp - 0x70]
xor edx, edx
push edx
push eax
lea eax, [ebp - 0x72c]
call fcn.0040a114
mov ecx, dword [ebp - 0x72c]
lea eax, [ebp - 0x728]
mov edx, 0x519398
call fcn.00405480
mov edx, dword [ebp - 0x728]
mov eax, dword [0x694598]
mov eax, dword [eax + 0x40]
mov eax, dword [eax + 0x270]
mov ecx, dword [eax]
call dword [ecx + 0x38]
mov eax, dword [ebp - 0x6c]
xor edx, edx
push edx
push eax
lea eax, [ebp - 0x734]
call fcn.0040a114
mov ecx, dword [ebp - 0x734]
lea eax, [ebp - 0x730]
mov edx, 0x5193a8
call fcn.00405480
mov edx, dword [ebp - 0x730]
mov eax, dword [0x694598]
mov eax, dword [eax + 0x40]
mov eax, dword [eax + 0x270]
mov ecx, dword [eax]
call dword [ecx + 0x38]
mov eax, dword [ebp - 0x68]
xor edx, edx
push edx
push eax
lea eax, [ebp - 0x73c]
call fcn.0040a114
mov ecx, dword [ebp - 0x73c]
lea eax, [ebp - 0x738]
mov edx, 0x5193b8
call fcn.00405480
mov edx, dword [ebp - 0x738]
mov eax, dword [0x694598]
mov eax, dword [eax + 0x40]
mov eax, dword [eax + 0x270]
mov ecx, dword [eax]
call dword [ecx + 0x38]
mov edx, dword [ebp - 4]
mov eax, 0x5193cc
call fcn.00405744
test eax, eax
jle case.0x50fad2.5079
push 1
push 0
mov ecx, 0x8000
mov edx, dword [ebp - 4]
mov eax, dword [0x69458c]
call fcn.0053ca7c
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x51778d
lea eax, [ebp - 0x73c]
mov edx, 0x14
call fcn.0040517c
lea eax, [ebp - 0x6cc]
mov edx, 0x12
call fcn.0040517c
lea eax, [ebp - 0x680]
mov edx, 0x3c
call fcn.0040517c
lea eax, [ebp - 0x4e4]
mov edx, 2
call fcn.0040517c
lea eax, [ebp - 0x4dc]
mov edx, 0x2f
call fcn.0040517c
lea eax, [ebp - 0x320]
mov edx, 0x16
call fcn.0040517c
lea eax, [ebp - 0x2b0]
call fcn.00405158
lea eax, [ebp - 0x280]
mov edx, 8
call fcn.0040517c
lea eax, [ebp - 0x234]
call fcn.00405158
lea eax, [ebp - 0x22c]
call fcn.00405158
lea eax, [ebp - 0x28]
mov edx, 0xa
call fcn.0040517c
ret