Function at 0x4128b0
Capabilities:
Contain obfuscated stackstrings
Create thread

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x48c50a
mov eax, dword fs:[0]
push eax
sub esp, 0xad0
mov eax, dword [0x4a7360]
xor eax, ebp
mov dword [ebp - 0x14], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, dword [ebp + 8]
xor ebx, ebx
mov dword [ebp - 0xad4], ecx
mov dword [ebp - 0xac8], ebx
cmp eax, 2
jne 0x412abb
xor edx, edx
push 0xa
mov eax, 0x49340c
lea esi, [ebp - 0x4c]
mov dword [ebp - 0x38], 7
mov dword [ebp - 0x3c], ebx
mov word [ebp - 0x4c], dx
call fcn.00404ad0
mov dword [ebp - 4], ebx
lea eax, [ebp - 0x84]
mov esi, 1
push eax
lea ecx, [ebp - 0x4c]
mov dword [ebp - 0xac8], esi
call fcn.0041b520
add esp, 4
mov ecx, eax
mov dword [ebp - 4], esi
mov eax, dword [ecx + 0x10]
mov edi, 3
push 0x493404
mov dword [ebp - 0xac8], edi
call fcn.00419790
test eax, eax
je 0x4129c0
xor ecx, ecx
mov edi, 7
push 0xa
mov eax, 0x49340c
lea esi, [ebp - 0x30]
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x20], ebx
mov word [ebp - 0x30], cx
call fcn.00404ad0
mov dword [ebp - 4], 2
lea edx, [ebp - 0x68]
push edx
mov ecx, esi
mov dword [ebp - 0xac8], edi
call fcn.0041b520
add esp, 4
mov ecx, eax
mov dword [ebp - 4], 3
mov eax, dword [ecx + 0x10]
push 0x493424
lea edi, [ebx + 5]
mov dword [ebp - 0xac8], 0xf
call fcn.00419790
mov byte [ebp - 0xac9], bl
test eax, eax
jne 0x4129c7
mov byte [ebp - 0xac9], 1
mov dword [ebp - 4], 2
test byte [ebp - 0xac8], 8
mov edi, 8
je 0x412a07
and dword [ebp - 0xac8], 0xfffffff7
cmp dword [ebp - 0x54], edi
jb 0x4129f4
mov eax, dword [ebp - 0x68]
push eax
call fcn.004662f1
add esp, 4
mov esi, 7
xor ecx, ecx
mov dword [ebp - 0x54], esi
mov dword [ebp - 0x58], ebx
mov word [ebp - 0x68], cx
jmp 0x412a0c
mov esi, 7
mov dword [ebp - 4], 1
test byte [ebp - 0xac8], 4
je 0x412a40
and dword [ebp - 0xac8], 0xfffffffb
cmp dword [ebp - 0x1c], edi
jb 0x412a34
mov edx, dword [ebp - 0x30]
push edx
call fcn.004662f1
add esp, 4
xor eax, eax
mov dword [ebp - 0x1c], esi
mov dword [ebp - 0x20], ebx
mov word [ebp - 0x30], ax
mov dword [ebp - 4], ebx
test byte [ebp - 0xac8], 2
je 0x412a76
and dword [ebp - 0xac8], 0xfffffffd
cmp dword [ebp - 0x70], edi
jb 0x412a67
mov ecx, dword [ebp - 0x84]
push ecx
call fcn.004662f1
add esp, 4
xor edx, edx
mov dword [ebp - 0x70], esi
mov dword [ebp - 0x74], ebx
mov word [ebp - 0x84], dx
mov dword [ebp - 4], 0xffffffff
test byte [ebp - 0xac8], 1
je 0x412aaa
and dword [ebp - 0xac8], 0xfffffffe
cmp dword [ebp - 0x38], edi
jb 0x412a9e
mov eax, dword [ebp - 0x4c]
push eax
call fcn.004662f1
add esp, 4
xor ecx, ecx
mov dword [ebp - 0x38], esi
mov dword [ebp - 0x3c], ebx
mov word [ebp - 0x4c], cx
cmp byte [ebp - 0xac9], bl
je 0x412ad5
mov dword [ebp + 8], 3
jmp 0x412ac0
cmp eax, 3
jne 0x412ad5
mov edx, dword [ebp - 0xad4]
cmp dword [edx + 0xe50], ebx
jne 0x412ad5
mov dword [ebp + 8], 4
xor eax, eax
mov word [ebp - 0x30], ax
push 0xa
mov eax, 0x49340c
lea esi, [ebp - 0x30]
mov byte [ebp - 0xac9], 1
mov dword [ebp - 0x1c], 7
mov dword [ebp - 0x20], ebx
call fcn.00404ad0
mov dword [ebp - 4], 4
lea ecx, [ebp - 0x68]
push ecx
mov ecx, esi
call fcn.0041b520
add esp, 4
mov ecx, eax
mov byte [ebp - 4], 5
mov eax, dword [ecx + 0x10]
push 0x4934dc
mov edi, 6
call fcn.00419790
test eax, eax
sete byte [ebp - 0xabd]
mov byte [ebp - 4], 4
cmp dword [ebp - 0x54], 8
jb 0x412b47
mov edx, dword [ebp - 0x68]
push edx
call fcn.004662f1
add esp, 4
mov esi, 7
xor eax, eax
mov dword [ebp - 0x54], esi
mov dword [ebp - 0x58], ebx
mov word [ebp - 0x68], ax
mov dword [ebp - 4], 0xffffffff
cmp dword [ebp - 0x1c], 8
jb 0x412b71
mov ecx, dword [ebp - 0x30]
push ecx
call fcn.004662f1
add esp, 4
mov edi, dword [ebp - 0xad4]
xor edx, edx
mov dword [ebp - 0x1c], esi
mov dword [ebp - 0x20], ebx
mov word [ebp - 0x30], dx
cmp byte [ebp - 0xabd], bl
je 0x412bf3
cmp dword [ebp + 8], 2
jne 0x412bf3
cmp dword [edi + 0xd7c], 8
lea esi, [edi + 0xd68]
jb 0x412ba4
mov eax, dword [esi]
jmp 0x412ba6
mov eax, esi
lea ecx, [ebp - 0xabc]
push ecx
push eax
call dword [0x48f0b0]
cmp eax, 0xffffffff
je 0x412bc2
push eax
call dword [fcn.0048f0b4]
jmp 0x412bcb
push esi
call fcn.00427b10
add esp, 4
cmp dword [esi + 0x14], 8
jb 0x412bd3
mov esi, dword [esi]
lea edx, [ebp - 0xabc]
push edx
push esi
call dword [0x48f0b0]
cmp eax, 0xffffffff
je 0x412bf3
push eax
call dword [fcn.0048f0b4]
mov byte [ebp - 0xac9], bl
mov eax, dword [ebp + 8]
mov dword [edi + 0xd2c], eax
xor ecx, ecx
push 0xe
mov eax, 0x491f00
lea esi, [ebp - 0x30]
mov dword [ebp - 0x1c], 7
mov dword [ebp - 0x20], ebx
mov word [ebp - 0x30], cx
call fcn.00404ad0
mov dword [ebp - 4], 6
lea edx, [ebp - 0x84]
push edx
mov ecx, esi
call fcn.0041b520
add esp, 4
mov byte [ebp - 4], 7
push 0x491ef0
push eax
lea eax, [ebp - 0x68]
push eax
call fcn.00404d40
add esp, 0xc
mov dword [ebp - 0xad0], eax
mov byte [ebp - 4], 8
lea esi, [edi + 0xda4]
mov dword [ebp - 0xac4], esi
mov edx, dword [esi]
mov eax, dword [edx]
mov ecx, esi
call eax
mov byte [ebp - 4], 9
mov ecx, dword [ebp - 0xad0]
push ebx
push ecx
lea ecx, [edi + 0xd84]
or eax, 0xffffffff
call fcn.00401790
mov edx, dword [edi + 4]
push ebx
push ebx
push 0x467
push edx
mov dword [edi + 0xda0], 1
call dword [0x48f348]
mov byte [ebp - 4], 8
mov eax, dword [esi]
mov edx, dword [eax + 4]
mov ecx, esi
call edx
mov byte [ebp - 4], 7
cmp dword [ebp - 0x54], 8
jb 0x412cbf
mov eax, dword [ebp - 0x68]
push eax
call fcn.004662f1
add esp, 4
mov esi, 7
xor ecx, ecx
mov dword [ebp - 0x54], esi
mov dword [ebp - 0x58], ebx
mov word [ebp - 0x68], cx
mov byte [ebp - 4], 6
cmp dword [ebp - 0x70], 8
jb 0x412ce9
mov edx, dword [ebp - 0x84]
push edx
call fcn.004662f1
add esp, 4
xor eax, eax
mov dword [ebp - 0x70], esi
mov dword [ebp - 0x74], ebx
mov word [ebp - 0x84], ax
mov dword [ebp - 4], 0xffffffff
cmp dword [ebp - 0x1c], 8
jb 0x412d11
mov ecx, dword [ebp - 0x30]
push ecx
call fcn.004662f1
add esp, 4
mov eax, dword [ebp + 8]
push eax
xor edx, edx
push edi
mov dword [ebp - 0x1c], esi
mov dword [ebp - 0x20], ebx
mov word [ebp - 0x30], dx
call fcn.004162b0
mov esi, dword [edi + 0xde8]
cmp esi, ebx
je 0x412d6e
mov ecx, dword [esi + 4]
xor eax, eax
cmp dword [edi + 0xd2c], 2
sete al
mov dword [ebp - 0xad0], eax
neg eax
sbb eax, eax
and eax, 5
push eax
push ecx
call dword [0x48f31c]
cmp dword [ebp - 0xad0], ebx
je 0x412d6e
mov edx, dword [esi + 4]
push 3
push ebx
push ebx
push ebx
push ebx
push ebx
push edx
call dword [fcn.0048f2f0]
mov eax, dword [edi + 0xdf0]
mov dword [ebp - 0xad0], eax
cmp eax, ebx
je 0x412dbb
mov eax, dword [eax + 4]
xor ecx, ecx
cmp dword [edi + 0xd2c], 2
sete cl
mov esi, ecx
mov edx, esi
neg edx
sbb edx, edx
and edx, 5
push edx
push eax
call dword [0x48f31c]
cmp esi, ebx
je 0x412dbb
mov ecx, dword [ebp - 0xad0]
mov edx, dword [ecx + 4]
push 3
push ebx
push ebx
push ebx
push ebx
push ebx
push edx
call dword [fcn.0048f2f0]
cmp dword [edi + 0xde4], ebx
je 0x412eae
cmp dword [edi + 0xd2c], 2
jne 0x412e65
xor eax, eax
mov word [ebp - 0x30], ax
push 0xb
mov eax, 0x4934ec
lea esi, [ebp - 0x30]
mov dword [ebp - 0x1c], 7
mov dword [ebp - 0x20], ebx
call fcn.00404ad0
mov dword [ebp - 4], 0xa
lea ecx, [ebp - 0x68]
push ecx
mov ecx, esi
call fcn.0041b520
add esp, 4
mov byte [ebp - 4], 0xb
mov ecx, dword [edi + 0xde4]
mov edx, eax
call fcn.00421cc0
mov byte [ebp - 4], 0xa
cmp dword [ebp - 0x54], 8
jb 0x412e2f
mov edx, dword [ebp - 0x68]
push edx
call fcn.004662f1
add esp, 4
mov esi, 7
xor eax, eax
mov dword [ebp - 0x54], esi
mov dword [ebp - 0x58], ebx
mov word [ebp - 0x68], ax
mov dword [ebp - 4], 0xffffffff
cmp dword [ebp - 0x1c], 8
jb 0x412e59
mov ecx, dword [ebp - 0x30]
push ecx
call fcn.004662f1
add esp, 4
xor edx, edx
mov dword [ebp - 0x1c], esi
mov dword [ebp - 0x20], ebx
mov word [ebp - 0x30], dx
xor eax, eax
cmp dword [edi + 0xd2c], 2
sete al
mov esi, eax
mov eax, dword [edi + 0xde4]
mov edx, dword [eax + 4]
mov ecx, esi
neg ecx
sbb ecx, ecx
and ecx, 5
push ecx
push edx
mov dword [ebp - 0xad0], eax
call dword [0x48f31c]
cmp esi, ebx
je 0x412eae
mov eax, dword [ebp - 0xad0]
mov ecx, dword [eax + 4]
push 3
push ebx
push ebx
push ebx
push ebx
push ebx
push ecx
call dword [fcn.0048f2f0]
mov eax, dword [edi + 0xdec]
mov dword [ebp - 0xac4], eax
cmp eax, ebx
je 0x412f01
mov ecx, dword [ebp - 0xac4]
xor edx, edx
cmp dword [edi + 0xd2c], 2
sete dl
mov esi, edx
mov edx, dword [ecx + 4]
mov eax, esi
neg eax
sbb eax, eax
and eax, 5
push eax
push edx
call dword [0x48f31c]
cmp esi, ebx
je 0x412f01
mov eax, dword [ebp - 0xac4]
mov ecx, dword [eax + 4]
push 3
push ebx
push ebx
push ebx
push ebx
push ebx
push ecx
call dword [fcn.0048f2f0]
mov eax, dword [edi + 0xdf4]
mov dword [ebp - 0xac4], eax
cmp eax, ebx
je 0x412f54
mov ecx, dword [ebp - 0xac4]
xor edx, edx
cmp dword [edi + 0xd2c], 2
sete dl
mov esi, edx
mov edx, dword [ecx + 4]
mov eax, esi
neg eax
sbb eax, eax
and eax, 5
push eax
push edx
call dword [0x48f31c]
cmp esi, ebx
je 0x412f54
mov eax, dword [ebp - 0xac4]
mov ecx, dword [eax + 4]
push 3
push ebx
push ebx
push ebx
push ebx
push ebx
push ecx
call dword [fcn.0048f2f0]
mov eax, dword [edi + 0xdb8]
mov dword [ebp - 0xac4], eax
cmp eax, ebx
je 0x412fb7
mov eax, dword [edi + 0xd2c]
cmp eax, 1
je 0x412f7d
cmp eax, 2
je 0x412f7d
cmp eax, 6
je 0x412f7d
xor esi, esi
jmp 0x412f82
mov esi, 1
mov eax, dword [ebp - 0xac4]
mov ecx, dword [eax + 4]
mov edx, esi
neg edx
sbb edx, edx
and edx, 5
push edx
push ecx
call dword [0x48f31c]
cmp esi, ebx
je 0x412fb7
mov edx, dword [ebp - 0xac4]
mov eax, dword [edx + 4]
push 3
push ebx
push ebx
push ebx
push ebx
push ebx
push eax
call dword [fcn.0048f2f0]
cmp dword [edi + 0xdb4], ebx
je 0x41300b
mov ecx, dword [edi + 0xd2c]
push ecx
call fcn.00409920
mov esi, eax
mov eax, dword [edi + 0xdb4]
add esp, 4
mov edx, esi
neg edx
sbb edx, edx
and edx, 5
mov dword [ebp - 0xad0], eax
mov eax, dword [eax + 4]
push edx
push eax
call dword [0x48f31c]
cmp esi, ebx
je 0x41300b
mov ecx, dword [ebp - 0xad0]
mov edx, dword [ecx + 4]
push 3
push ebx
push ebx
push ebx
push ebx
push ebx
push edx
call dword [fcn.0048f2f0]
mov ecx, dword [edi + 0xdbc]
mov dword [ebp - 0xad0], ecx
cmp ecx, ebx
je 0x413063
mov eax, dword [edi + 0xd2c]
cmp eax, 5
je 0x41302f
cmp eax, 8
je 0x41302f
xor esi, esi
jmp 0x413034
mov esi, 1
mov ecx, dword [ecx + 4]
mov eax, esi
neg eax
sbb eax, eax
and eax, 5
push eax
push ecx
call dword [0x48f31c]
cmp esi, ebx
je 0x413063
mov edx, dword [ebp - 0xad0]
mov eax, dword [edx + 4]
push 3
push ebx
push ebx
push ebx
push ebx
push ebx
push eax
call dword [fcn.0048f2f0]
mov eax, dword [edi + 0xdc0]
mov dword [ebp - 0xac4], eax
cmp eax, ebx
je 0x4130c2
cmp dword [edi + 0xd2c], 2
jne 0x41308b
cmp byte [ebp - 0xac9], bl
je 0x41308b
mov esi, 1
jmp 0x41308d
xor esi, esi
mov edx, dword [ebp - 0xac4]
mov eax, dword [edx + 4]
mov ecx, esi
neg ecx
sbb ecx, ecx
and ecx, 5
push ecx
push eax
call dword [0x48f31c]
cmp esi, ebx
je 0x4130c2
mov ecx, dword [ebp - 0xac4]
mov edx, dword [ecx + 4]
push 3
push ebx
push ebx
push ebx
push ebx
push ebx
push edx
call dword [fcn.0048f2f0]
mov eax, dword [edi + 0xdcc]
mov dword [ebp - 0xac4], eax
cmp eax, ebx
je 0x413121
cmp dword [edi + 0xd2c], 2
jne 0x4130ea
cmp byte [ebp - 0xac9], bl
je 0x4130ea
mov esi, 1
jmp 0x4130ec
xor esi, esi
mov ecx, dword [ebp - 0xac4]
mov edx, dword [ecx + 4]
mov eax, esi
neg eax
sbb eax, eax
and eax, 5
push eax
push edx
call dword [0x48f31c]
cmp esi, ebx
je 0x413121
mov eax, dword [ebp - 0xac4]
mov ecx, dword [eax + 4]
push 3
push ebx
push ebx
push ebx
push ebx
push ebx
push ecx
call dword [fcn.0048f2f0]
mov edx, dword [edi + 0xe20]
sub edx, dword [edi + 0xe1c]
mov dword [ebp - 0xac4], ebx
test edx, 0xfffffffc
jle 0x4131b2
jmp 0x413140
mov ecx, dword [edi + 0xe1c]
mov edx, dword [ebp - 0xac4]
xor eax, eax
cmp dword [edi + 0xd2c], 1
sete al
mov esi, eax
mov eax, dword [ecx + edx*4]
mov edx, dword [eax + 4]
mov ecx, esi
neg ecx
sbb ecx, ecx
and ecx, 5
push ecx
push edx
mov dword [ebp - 0xad0], eax
call dword [0x48f31c]
cmp esi, ebx
je 0x413192
mov eax, dword [ebp - 0xad0]
mov ecx, dword [eax + 4]
push 3
push ebx
push ebx
push ebx
push ebx
push ebx
push ecx
call dword [fcn.0048f2f0]
mov edx, dword [edi + 0xe20]
sub edx, dword [edi + 0xe1c]
mov eax, dword [ebp - 0xac4]
inc eax
sar edx, 2
mov dword [ebp - 0xac4], eax
cmp eax, edx
jl 0x413140
mov eax, dword [edi + 0xd2c]
cmp eax, 3
je 0x4131cd
cmp eax, 4
je 0x4131cd
mov dword [ebp - 0xac4], ebx
cmp eax, 7
jne 0x4131d7
mov dword [ebp - 0xac4], 1
mov eax, dword [ebp - 0xac4]
mov esi, dword [edi + 0xdd0]
mov ecx, dword [esi + 4]
neg eax
sbb eax, eax
and eax, 5
push eax
push ecx
call dword [0x48f31c]
cmp dword [ebp - 0xac4], ebx
je 0x41320e
mov edx, dword [esi + 4]
push 3
push ebx
push ebx
push ebx
push ebx
push ebx
push edx
call dword [fcn.0048f2f0]
mov eax, dword [edi + 0xd2c]
cmp eax, 3
je 0x413229
cmp eax, 4
je 0x413229
mov dword [ebp - 0xac4], ebx
cmp eax, 7
jne 0x413233
mov dword [ebp - 0xac4], 1
mov eax, dword [ebp - 0xac4]
mov esi, dword [edi + 0xdd4]
mov ecx, dword [esi + 4]
neg eax
sbb eax, eax
and eax, 5
push eax
push ecx
call dword [0x48f31c]
cmp dword [ebp - 0xac4], ebx
je 0x41326a
mov edx, dword [esi + 4]
push 3
push ebx
push ebx
push ebx
push ebx
push ebx
push edx
call dword [fcn.0048f2f0]
mov eax, dword [edi + 0xd2c]
cmp eax, 3
je 0x413285
cmp eax, 4
je 0x413285
mov dword [ebp - 0xac4], ebx
cmp eax, 7
jne 0x41328f
mov dword [ebp - 0xac4], 1
mov eax, dword [ebp - 0xac4]
mov esi, dword [edi + 0xdd8]
mov ecx, dword [esi + 4]
neg eax
sbb eax, eax
and eax, 5
push eax
push ecx
call dword [0x48f31c]
cmp dword [ebp - 0xac4], ebx
je 0x4132c6
mov edx, dword [esi + 4]
push 3
push ebx
push ebx
push ebx
push ebx
push ebx
push edx
call dword [fcn.0048f2f0]
mov eax, dword [edi + 0xd2c]
cmp eax, 3
je 0x4132e1
cmp eax, 4
je 0x4132e1
mov dword [ebp - 0xac4], ebx
cmp eax, 7
jne 0x4132eb
mov dword [ebp - 0xac4], 1
mov eax, dword [ebp - 0xac4]
mov esi, dword [edi + 0xdc4]
mov ecx, dword [esi + 4]
neg eax
sbb eax, eax
and eax, 5
push eax
push ecx
call dword [0x48f31c]
cmp dword [ebp - 0xac4], ebx
je 0x413322
mov edx, dword [esi + 4]
push 3
push ebx
push ebx
push ebx
push ebx
push ebx
push edx
call dword [fcn.0048f2f0]
mov eax, dword [edi + 0xd2c]
cmp eax, 3
je 0x41333d
cmp eax, 4
je 0x41333d
mov dword [ebp - 0xac4], ebx
cmp eax, 7
jne 0x413347
mov dword [ebp - 0xac4], 1
mov eax, dword [ebp - 0xac4]
mov esi, dword [edi + 0xdc8]
mov ecx, dword [esi + 4]
neg eax
sbb eax, eax
and eax, 5
push eax
push ecx
call dword [0x48f31c]
cmp dword [ebp - 0xac4], ebx
je 0x41337e
mov edx, dword [esi + 4]
push 3
push ebx
push ebx
push ebx
push ebx
push ebx
push edx
call dword [fcn.0048f2f0]
xor eax, eax
cmp dword [edi + 0xd2c], 8
sete al
mov esi, eax
mov eax, dword [edi + 0xdf8]
mov edx, dword [eax + 4]
mov ecx, esi
neg ecx
sbb ecx, ecx
and ecx, 5
push ecx
push edx
mov dword [ebp - 0xad0], eax
call dword [0x48f31c]
cmp esi, ebx
je 0x4133c7
mov eax, dword [ebp - 0xad0]
mov ecx, dword [eax + 4]
push 3
push ebx
push ebx
push ebx
push ebx
push ebx
push ecx
call dword [fcn.0048f2f0]
cmp dword [edi + 0xd2c], 2
je 0x4133ef
mov esi, dword [edi + 0xdb8]
mov edx, dword [esi + 4]
push 1
push edx
call dword [fcn.0048f35c]
mov eax, dword [esi + 4]
push 1
push ebx
push eax
call dword [fcn.0048f358]
lea ecx, [edi + 0x96c]
push ecx
push 2
mov dword [edi + 0xd28], ebx
call dword [fcn.0048f2ac]
xor edx, edx
push 0xa
mov eax, 0x49340c
lea esi, [ebp - 0x4c]
mov dword [ebp - 0x38], 7
mov dword [ebp - 0x3c], ebx
mov word [ebp - 0x4c], dx
call fcn.00404ad0
mov dword [ebp - 4], 0xc
or dword [ebp - 0xac8], 0x10
lea eax, [ebp - 0x84]
push eax
mov ecx, esi
call fcn.0041b520
add esp, 4
mov dword [ebp - 4], 0xd
mov edx, dword [eax + 0x10]
or dword [ebp - 0xac8], 0x20
mov ecx, edx
cmp ecx, edx
jae 0x413459
mov esi, edx
cmp edx, 3
jb 0x413465
mov esi, 3
cmp dword [eax + 0x14], 8
jb 0x41346d
mov eax, dword [eax]
mov dword [ebp - 0xac4], esi
mov ecx, 0x493404
cmp esi, ebx
jbe 0x4134a8
lea esp, [esp]
mov si, word [eax]
cmp si, word [ecx]
jne 0x413498
add eax, 2
add ecx, 2
dec dword [ebp - 0xac4]
jne 0x413480
jmp 0x4134a8
movzx eax, word [eax]
cmp ax, word [ecx]
sbb eax, eax
and eax, 0xfffffffe
inc eax
cmp eax, ebx
jne 0x4134bc
cmp edx, 3
jae 0x4134b2
or eax, 0xffffffff
jmp 0x4134ba
xor eax, eax
cmp edx, 3
setne al
cmp eax, ebx
sete al
cmp al, bl
jne 0x413589
xor ecx, ecx
push 0xa
mov eax, 0x49340c
lea esi, [ebp - 0x30]
mov dword [ebp - 0x1c], 7
mov dword [ebp - 0x20], ebx
mov word [ebp - 0x30], cx
call fcn.00404ad0
mov dword [ebp - 4], 0xe
or dword [ebp - 0xac8], 0x40
lea edx, [ebp - 0x68]
push edx
mov ecx, esi
call fcn.0041b520
add esp, 4
mov dword [ebp - 4], 0xf
mov edx, dword [eax + 0x10]
or dword [ebp - 0xac8], 0x80
mov ecx, edx
cmp ecx, edx
jae 0x41351c
mov esi, edx
cmp edx, 5
jb 0x413528
mov esi, 5
cmp dword [eax + 0x14], 8
jb 0x413530
mov eax, dword [eax]
mov dword [ebp - 0xac4], esi
mov ecx, 0x493424
cmp esi, ebx
jbe 0x413568
nop
mov si, word [eax]
cmp si, word [ecx]
jne 0x413558
add eax, 2
add ecx, 2
dec dword [ebp - 0xac4]
jne 0x413540
jmp 0x413568
movzx eax, word [eax]
cmp ax, word [ecx]
sbb eax, eax
and eax, 0xfffffffe
inc eax
cmp eax, ebx
jne 0x41357c
cmp edx, 5
jae 0x413572
or eax, 0xffffffff
jmp 0x41357a
xor eax, eax
cmp edx, 5
setne al
cmp eax, ebx
sete al
mov byte [ebp - 0xac9], bl
cmp al, bl
je 0x413590
mov byte [ebp - 0xac9], 1
mov dword [ebp - 4], 0xe
test byte [ebp - 0xac8], 0x80
je 0x4135cf
and dword [ebp - 0xac8], 0xffffff7f
cmp dword [ebp - 0x54], 8
jb 0x4135bc
mov ecx, dword [ebp - 0x68]
push ecx
call fcn.004662f1
add esp, 4
mov esi, 7
xor edx, edx
mov dword [ebp - 0x54], esi
mov dword [ebp - 0x58], ebx
mov word [ebp - 0x68], dx
jmp 0x4135d4
mov esi, 7
mov dword [ebp - 4], 0xd
test byte [ebp - 0xac8], 0x40
je 0x413609
and dword [ebp - 0xac8], 0xffffffbf
cmp dword [ebp - 0x1c], 8
jb 0x4135fd
mov eax, dword [ebp - 0x30]
push eax
call fcn.004662f1
add esp, 4
xor ecx, ecx
mov dword [ebp - 0x1c], esi
mov dword [ebp - 0x20], ebx
mov word [ebp - 0x30], cx
mov dword [ebp - 4], 0xc
test byte [ebp - 0xac8], 0x20
je 0x413644
and dword [ebp - 0xac8], 0xffffffdf
cmp dword [ebp - 0x70], 8
jb 0x413635
mov edx, dword [ebp - 0x84]
push edx
call fcn.004662f1
add esp, 4
xor eax, eax
mov dword [ebp - 0x70], esi
mov dword [ebp - 0x74], ebx
mov word [ebp - 0x84], ax
mov dword [ebp - 4], 0xffffffff
test byte [ebp - 0xac8], 0x10
je 0x413679
and dword [ebp - 0xac8], 0xffffffef
cmp dword [ebp - 0x38], 8
jb 0x41366d
mov ecx, dword [ebp - 0x4c]
push ecx
call fcn.004662f1
add esp, 4
xor edx, edx
mov dword [ebp - 0x38], esi
mov dword [ebp - 0x3c], ebx
mov word [ebp - 0x4c], dx
cmp byte [ebp - 0xac9], bl
je 0x413687
cmp dword [ebp + 8], 8
je 0x4136a7
mov eax, dword [edi + 4]
push eax
call dword [0x48f30c]
mov ecx, dword [edi + 4]
push 1
push ecx
call dword [0x48f31c]
mov edx, dword [edi + 4]
push edx
call dword [0x48f308]
mov eax, dword [edi + 0xd2c]
dec eax
cmp eax, 6
ja case.default.0x4136b7
jmp dword [eax*4 + 0x4153d8]
cmp dword [0x4aa3a0], ebx
jne 0x4136cd
mov eax, 0x491d48
jmp 0x4136fe
push 0xfde9
mov edx, 0x4aa390
lea ecx, [ebp - 0x3d4]
call fcn.00426230
add esp, 4
mov ecx, 0x10
mov dword [ebp - 4], ecx
or dword [ebp - 0xac8], 0x100
cmp dword [eax + 0x14], ecx
jb 0x4136fe
mov eax, dword [eax]
push eax
sub esp, 0x1c
mov esi, esp
mov dword [esi + 0x14], 0xf
mov dword [esi + 0x10], ebx
mov edi, 0x1a
mov eax, 0x493504
mov dword [ebp - 0xad0], esp
mov byte [esi], bl
call fcn.00404720
mov dword [ebp - 4], 0x11
push 4
push 0x4aed40
mov byte [ebp - 4], 0x10
call fcn.00428df0
add esp, 0x28
mov dword [ebp - 4], 0xffffffff
test dword [ebp - 0xac8], 0x100
je 0x41378a
and dword [ebp - 0xac8], 0xfffffeff
cmp dword [ebp - 0x3c0], 0x10
jb 0x413774
mov eax, dword [ebp - 0x3d4]
push eax
call fcn.004662f1
add esp, 4
mov dword [ebp - 0x3c0], 0xf
mov dword [ebp - 0x3c4], ebx
mov byte [ebp - 0x3d4], bl
push 0x4aa390
call fcn.00409310
mov esi, dword [ebp - 0xad4]
add esp, 4
test eax, eax
jne 0x4137af
mov ecx, dword [esi + 0xdfc]
cmp ecx, dword [esi + 0xe00]
jne 0x4137c9
push ebx
mov ecx, esi
call fcn.004163d0
mov edx, dword [esi + 4]
push ebx
push 1
push 0x464
push edx
call dword [0x48f348]
cmp dword [0x4aa3a0], ebx
jne case.default.0x4136b7
mov eax, dword [esi + 0xdfc]
cmp eax, dword [esi + 0xe00]
je case.default.0x4136b7
push ebx
push eax
or eax, 0xffffffff
mov ecx, 0x4aa390
call fcn.00401790
push 1
mov ecx, esi
call fcn.004163d0
jmp case.default.0x4136b7
sub esp, 0x1c
mov esi, esp
mov dword [esi + 0x14], 0xf
mov dword [esi + 0x10], ebx
mov edi, 0x17
mov eax, 0x493520
mov dword [ebp - 0xad0], esp
mov byte [esi], bl
call fcn.00404720
mov dword [ebp - 4], 0x12
push 4
push 0x4aed40
mov dword [ebp - 4], 0xffffffff
call fcn.00428df0
mov edx, dword [ebp - 0xad4]
mov ecx, dword [edx + 0xde8]
add esp, 0x24
cmp ecx, ebx
je 0x413860
mov eax, dword [ecx]
mov edx, dword [eax + 0x30]
push 1
call edx
mov edi, dword [ebp - 0xad4]
mov ecx, dword [edi + 0xdec]
cmp ecx, ebx
je 0x413878
mov eax, dword [ecx]
mov edx, dword [eax + 0x30]
push ebx
call edx
mov ecx, dword [edi + 0xdec]
mov eax, dword [ecx]
mov edx, dword [eax + 0x34]
call edx
test al, al
jne 0x4138f0
xor eax, eax
mov word [ebp - 0x24c], ax
push 0x1a
mov eax, 0x49346c
lea esi, [ebp - 0x24c]
mov dword [ebp - 0x238], 7
mov dword [ebp - 0x23c], ebx
call fcn.00404ad0
mov dword [ebp - 4], 0x13
or dword [ebp - 0xac8], 0x200
lea ecx, [ebp - 0x620]
push ecx
mov ecx, esi
call fcn.0041b520
add esp, 4
mov dword [ebp - 4], 0x14
or dword [ebp - 0xac8], 0x400
cmp dword [eax + 0x10], ebx
ja 0x4138f0
xor al, al
jmp 0x4138f2
mov al, 1
mov esi, dword [edi + 0xdb8]
xor edx, edx
cmp al, bl
mov eax, dword [esi + 4]
setne dl
push edx
push eax
call dword [fcn.0048f35c]
mov ecx, dword [esi + 4]
push 1
push ebx
push ecx
call dword [fcn.0048f358]
mov dword [ebp - 4], 0x13
test dword [ebp - 0xac8], 0x400
je 0x413965
and dword [ebp - 0xac8], 0xfffffbff
cmp dword [ebp - 0x60c], 8
jb 0x41394c
mov edx, dword [ebp - 0x620]
push edx
call fcn.004662f1
add esp, 4
xor eax, eax
mov dword [ebp - 0x60c], 7
mov dword [ebp - 0x610], ebx
mov word [ebp - 0x620], ax
mov dword [ebp - 4], 0xffffffff
test dword [ebp - 0xac8], 0x200
je case.default.0x4136b7
and dword [ebp - 0xac8], 0xfffffdff
cmp dword [ebp - 0x238], 8
jb 0x41399e
mov ecx, dword [ebp - 0x24c]
push ecx
call fcn.004662f1
add esp, 4
xor edx, edx
mov dword [ebp - 0x238], 7
mov dword [ebp - 0x23c], ebx
mov word [ebp - 0x24c], dx
jmp case.default.0x4136b7
sub esp, 0x1c
mov esi, esp
mov dword [esi + 0x14], 0xf
mov dword [esi + 0x10], ebx
mov edi, 0xe
mov eax, 0x493538
mov dword [ebp - 0xad0], esp
mov byte [esi], bl
call fcn.00404720
mov dword [ebp - 4], 0x15
push 4
push 0x4aed40
mov dword [ebp - 4], 0xffffffff
call fcn.00428df0
mov edi, dword [ebp - 0xad4]
add esp, 0x24
push ebx
lea eax, [edi + 0xd4c]
push eax
lea ecx, [edi + 0x898]
or eax, 0xffffffff
call fcn.00401790
lea ecx, [ebp - 0xad0]
push ecx
push ebx
lea esi, [edi + 0x74]
push esi
push 0x42bca0
push ebx
push ebx
mov dword [esi + 4], edi
mov dword [ebp - 0xad0], ebx
call fcn.0046a82c
add esp, 0x18
mov dword [esi + 8], eax
jmp case.default.0x4136b7
sub esp, 0x1c
mov esi, esp
mov dword [esi + 0x14], 0xf
mov dword [esi + 0x10], ebx
mov edi, 0xd
mov eax, 0x493548
mov dword [ebp - 0xad0], esp
mov byte [esi], bl
call fcn.00404720
mov dword [ebp - 4], 0x16
push 4
push 0x4aed40
mov dword [ebp - 4], 0xffffffff
call fcn.00428df0
mov eax, dword [ebp - 0xad4]
mov edx, dword [eax + 0xe5c]
sub edx, dword [eax + 0xe58]
add esp, 0x24
sar edx, 2
xor edi, edi
mov esi, eax
test edx, edx
je 0x413add
jmp 0x413ab0
mov eax, dword [esi + 0xe58]
mov eax, dword [eax + edi*4]
cmp dword [eax + 8], ebx
je 0x413ac9
mov eax, dword [eax + 8]
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx]
call eax
mov ecx, dword [esi + 0xe5c]
sub ecx, dword [esi + 0xe58]
inc edi
sar ecx, 2
cmp edi, ecx
jb 0x413ab0
push ebx
lea edx, [esi + 0xd4c]
push edx
lea ecx, [esi + 0x8fc]
or eax, 0xffffffff
call fcn.00401790
push ebx
lea eax, [esi + 0xd68]
push eax
lea ecx, [esi + 0x918]
or eax, 0xffffffff
call fcn.00401790
lea ecx, [ebp - 0xad0]
push ecx
push ebx
lea edi, [esi + 0x8f0]
push edi
push 0x42bca0
push ebx
push ebx
mov dword [edi + 4], esi
mov dword [ebp - 0xad0], ebx
call fcn.0046a82c
add esp, 0x18
mov dword [edi + 8], eax
jmp case.default.0x4136b7
sub esp, 0x1c
mov esi, esp
mov dword [esi + 0x14], 0xf
mov dword [esi + 0x10], ebx
mov edi, 0xe
mov eax, 0x493558
mov dword [ebp - 0xac4], esp
mov byte [esi], bl
call fcn.00404720
mov dword [ebp - 4], 0x17
push 4
push 0x4aed40
mov dword [ebp - 4], 0xffffffff
call fcn.00428df0
xor edx, edx
add esp, 0x24
mov dword [ebp - 0x38], 7
mov dword [ebp - 0x3c], ebx
mov word [ebp - 0x4c], dx
mov dword [ebp - 4], 0x18
mov esi, dword [ebp - 0xad4]
lea eax, [ebp - 0x2d8]
push eax
mov ecx, esi
call fcn.004167c0
mov byte [ebp - 4], 0x19
mov ecx, dword [esi + 0xde8]
cmp ecx, ebx
je 0x413bc3
mov edx, dword [ecx]
mov eax, dword [edx + 0x34]
call eax
test al, al
je 0x4141d6
xor ecx, ecx
mov edi, 7
push ebx
mov eax, 0x491fc8
lea esi, [ebp - 0x2a0]
mov dword [ebp - 0x28c], edi
mov dword [ebp - 0x290], ebx
mov word [ebp - 0x2a0], cx
call fcn.00404ad0
mov byte [ebp - 4], 0x1a
xor edx, edx
push ebx
mov eax, 0x491fc8
lea esi, [ebp - 0x2bc]
mov dword [ebp - 0x2a8], edi
mov dword [ebp - 0x2ac], ebx
mov word [ebp - 0x2bc], dx
call fcn.00404ad0
mov byte [ebp - 4], 0x1b
xor eax, eax
mov word [ebp - 0x284], ax
push 0xe
mov eax, 0x491f00
lea esi, [ebp - 0x284]
mov dword [ebp - 0x270], edi
mov dword [ebp - 0x274], ebx
call fcn.00404ad0
mov byte [ebp - 4], 0x1c
lea ecx, [ebp - 0x444]
push ecx
mov ecx, esi
call fcn.0041b520
add esp, 4
mov byte [ebp - 4], 0x1d
push 0x493568
push eax
lea edx, [ebp - 0x540]
push edx
call fcn.00404d40
add esp, 0xc
mov byte [ebp - 4], 0x1e
lea ecx, [ebp - 0x4c]
push ecx
lea edx, [ebp - 0x2d8]
push edx
push eax
lea edx, [ebp - 0x2a0]
lea ecx, [ebp - 0x2bc]
call fcn.0042c490
add esp, 0xc
test eax, eax
sete byte [ebp - 0xabd]
mov byte [ebp - 4], 0x1d
cmp dword [ebp - 0x52c], 8
jb 0x413cba
mov eax, dword [ebp - 0x540]
push eax
call fcn.004662f1
add esp, 4
xor ecx, ecx
mov dword [ebp - 0x52c], edi
mov dword [ebp - 0x530], ebx
mov word [ebp - 0x540], cx
mov byte [ebp - 4], 0x1c
mov esi, 8
cmp dword [ebp - 0x430], esi
jb 0x413cef
mov edx, dword [ebp - 0x444]
push edx
call fcn.004662f1
add esp, 4
xor eax, eax
mov dword [ebp - 0x430], edi
mov dword [ebp - 0x434], ebx
mov word [ebp - 0x444], ax
mov byte [ebp - 4], 0x1b
cmp dword [ebp - 0x270], esi
jb 0x413d1f
mov ecx, dword [ebp - 0x284]
push ecx
call fcn.004662f1
add esp, 4
xor edx, edx
mov dword [ebp - 0x270], edi
mov dword [ebp - 0x274], ebx
mov word [ebp - 0x284], dx
mov byte [ebp - 4], 0x1a
cmp dword [ebp - 0x2a8], esi
jb 0x413d4f
mov eax, dword [ebp - 0x2bc]
push eax
call fcn.004662f1
add esp, 4
xor ecx, ecx
mov dword [ebp - 0x2a8], edi
mov dword [ebp - 0x2ac], ebx
mov word [ebp - 0x2bc], cx
mov byte [ebp - 4], 0x19
cmp dword [ebp - 0x28c], esi
jb 0x413d7f
mov edx, dword [ebp - 0x2a0]
push edx
call fcn.004662f1
add esp, 4
xor eax, eax
mov dword [ebp - 0x28c], edi
mov dword [ebp - 0x290], ebx
mov word [ebp - 0x2a0], ax
cmp byte [ebp - 0xabd], bl
je 0x413ddf
mov eax, 0x493574
lea ecx, [ebp - 0x674]
call fcn.004042c0
mov byte [ebp - 4], 0x1f
lea ecx, [ebp - 0x674]
push ecx
mov ecx, dword [ebp - 0xad4]
add ecx, 0x93c
lea edx, [ebp - 0x4c]
call fcn.00422820
mov byte [ebp - 4], 0x19
lea esi, [ebp - 0x674]
call fcn.00401760
mov esi, 8
mov eax, 0x493584
lea ecx, [ebp - 0x2f4]
call fcn.004042c0
mov byte [ebp - 4], 0x20
lea edx, [ebp - 0x604]
push edx
lea ecx, [ebp - 0x2f4]
call fcn.0041b520
add esp, 4
mov byte [ebp - 4], 0x21
cmp dword [eax + 0x10], ebx
setne byte [ebp - 0xabd]
mov byte [ebp - 4], 0x20
cmp dword [ebp - 0x5f0], esi
jb 0x413e31
mov eax, dword [ebp - 0x604]
push eax
call fcn.004662f1
add esp, 4
xor ecx, ecx
mov dword [ebp - 0x5f0], edi
mov dword [ebp - 0x5f4], ebx
mov word [ebp - 0x604], cx
mov byte [ebp - 4], 0x19
cmp dword [ebp - 0x2e0], esi
jb 0x413e61
mov edx, dword [ebp - 0x2f4]
push edx
call fcn.004662f1
add esp, 4
xor eax, eax
mov word [ebp - 0x2f4], ax
mov dword [ebp - 0x2e0], edi
mov dword [ebp - 0x2e4], ebx
mov eax, 0x491fc8
cmp byte [ebp - 0xabd], bl
je 0x4140b3
lea ecx, [ebp - 0x6e4]
call fcn.004042c0
mov byte [ebp - 4], 0x22
mov eax, 0x491fc8
lea ecx, [ebp - 0x71c]
call fcn.004042c0
mov byte [ebp - 4], 0x23
mov eax, 0x491f00
lea ecx, [ebp - 0x6ac]
call fcn.004042c0
mov byte [ebp - 4], 0x24
mov eax, 0x493584
lea ecx, [ebp - 0x754]
call fcn.004042c0
mov byte [ebp - 4], 0x25
lea ecx, [ebp - 0x7c4]
push ecx
lea ecx, [ebp - 0x6ac]
call fcn.0041b520
add esp, 4
mov esi, eax
mov byte [ebp - 4], 0x26
lea edx, [ebp - 0x7a8]
push edx
lea ecx, [ebp - 0x754]
call fcn.0041b520
add esp, 4
mov byte [ebp - 4], 0x27
push 0x4920c0
push eax
lea eax, [ebp - 0x850]
push eax
call fcn.00404d40
add esp, 0xc
mov byte [ebp - 4], 0x28
lea ecx, [ebp - 0x7e0]
push ecx
mov edx, esi
mov ecx, eax
call fcn.00404e80
add esp, 4
mov byte [ebp - 4], 0x29
push 0x493568
push eax
lea edx, [ebp - 0x818]
push edx
call fcn.00404d40
add esp, 0xc
mov byte [ebp - 4], 0x2a
lea ecx, [ebp - 0x4c]
push ecx
lea edx, [ebp - 0x2d8]
push edx
push eax
lea edx, [ebp - 0x6e4]
lea ecx, [ebp - 0x71c]
call fcn.0042c350
add esp, 0xc
test eax, eax
sete byte [ebp - 0xabd]
mov byte [ebp - 4], 0x29
lea esi, [ebp - 0x818]
call fcn.00401760
mov byte [ebp - 4], 0x28
lea esi, [ebp - 0x7e0]
call fcn.00401760
mov byte [ebp - 4], 0x27
lea esi, [ebp - 0x850]
call fcn.00401760
mov byte [ebp - 4], 0x26
lea esi, [ebp - 0x7a8]
call fcn.00401760
mov byte [ebp - 4], 0x25
lea esi, [ebp - 0x7c4]
call fcn.00401760
mov byte [ebp - 4], 0x24
lea esi, [ebp - 0x754]
call fcn.00401760
mov byte [ebp - 4], 0x23
lea esi, [ebp - 0x6ac]
call fcn.00401760
mov byte [ebp - 4], 0x22
lea esi, [ebp - 0x71c]
call fcn.00401760
mov byte [ebp - 4], 0x19
lea esi, [ebp - 0x6e4]
call fcn.00401760
cmp byte [ebp - 0xabd], bl
je 0x4141d6
cmp dword [ebp - 0x38], 8
mov eax, dword [ebp - 0x4c]
mov dword [ebp - 0xac4], ebx
jae 0x41401d
lea eax, [ebp - 0x4c]
lea ecx, [ebp - 0xac4]
push ecx
lea edx, [ebp - 0xa7c]
push edx
push 0x104
push eax
call dword [fcn.0048f240]
test eax, eax
je 0x4141d6
mov eax, dword [ebp - 0xac4]
cmp eax, ebx
je 0x41404e
xor ecx, ecx
mov word [eax], cx
lea eax, [ebp - 0xa7c]
lea ecx, [ebp - 0x690]
call fcn.004042c0
mov byte [ebp - 4], 0x2b
mov eax, 0x4935b0
lea ecx, [ebp - 0x658]
call fcn.004042c0
mov byte [ebp - 4], 0x2c
mov ecx, dword [ebp - 0xad4]
lea edx, [ebp - 0x658]
push edx
add ecx, 0x93c
lea edx, [ebp - 0x690]
call fcn.00422820
mov byte [ebp - 4], 0x2b
lea esi, [ebp - 0x658]
call fcn.00401760
mov byte [ebp - 4], 0x19
lea esi, [ebp - 0x690]
jmp 0x4141d1
lea ecx, [ebp - 0x738]
call fcn.004042c0
mov byte [ebp - 4], 0x2d
mov eax, 0x491fc8
lea ecx, [ebp - 0x700]
call fcn.004042c0
mov byte [ebp - 4], 0x2e
mov eax, 0x491f00
lea ecx, [ebp - 0x6c8]
call fcn.004042c0
mov byte [ebp - 4], 0x2f
lea eax, [ebp - 0x834]
push eax
lea ecx, [ebp - 0x6c8]
call fcn.0041b520
add esp, 4
mov byte [ebp - 4], 0x30
push 0x493568
push eax
lea ecx, [ebp - 0x7fc]
push ecx
call fcn.00404d40
add esp, 0xc
mov byte [ebp - 4], 0x31
lea edx, [ebp - 0x4c]
push edx
lea ecx, [ebp - 0x2d8]
push ecx
push eax
lea edx, [ebp - 0x738]
lea ecx, [ebp - 0x700]
call fcn.0042c350
add esp, 0xc
test eax, eax
sete byte [ebp - 0xabd]
mov byte [ebp - 4], 0x30
lea esi, [ebp - 0x7fc]
call fcn.00401760
mov byte [ebp - 4], 0x2f
lea esi, [ebp - 0x834]
call fcn.00401760
mov byte [ebp - 4], 0x2e
lea esi, [ebp - 0x6c8]
call fcn.00401760
mov byte [ebp - 4], 0x2d
lea esi, [ebp - 0x700]
call fcn.00401760
mov byte [ebp - 4], 0x19
lea esi, [ebp - 0x738]
call fcn.00401760
cmp byte [ebp - 0xabd], bl
je 0x4141d6
mov eax, 0x493574
lea ecx, [ebp - 0x770]
call fcn.004042c0
mov byte [ebp - 4], 0x32
mov ecx, dword [ebp - 0xad4]
lea edx, [ebp - 0x770]
push edx
add ecx, 0x93c
lea edx, [ebp - 0x4c]
call fcn.00422820
mov byte [ebp - 4], 0x19
lea esi, [ebp - 0x770]
call fcn.00401760
mov eax, 0x4935b0
lea ecx, [ebp - 0x310]
call fcn.004042c0
mov byte [ebp - 4], 0x33
mov eax, dword [ebp - 0xad4]
lea edi, [eax + 0xd68]
lea ecx, [eax + 0x93c]
lea eax, [ebp - 0x310]
push eax
mov edx, edi
mov dword [ebp - 0xac4], ecx
call fcn.00422820
mov byte [ebp - 4], 0x19
mov esi, 8
cmp dword [ebp - 0x2fc], esi
jb 0x414230
mov ecx, dword [ebp - 0x310]
push ecx
call fcn.004662f1
add esp, 4
xor edx, edx
mov eax, 0x49211c
lea ecx, [ebp - 0x348]
mov dword [ebp - 0x2fc], 7
mov dword [ebp - 0x300], ebx
mov word [ebp - 0x310], dx
call fcn.004042c0
mov byte [ebp - 4], 0x34
lea eax, [ebp - 0x47c]
push eax
lea ecx, [ebp - 0x348]
call fcn.0041b520
add esp, 4
mov byte [ebp - 4], 0x35
push eax
lea ecx, [ebp - 0xf8]
push 0x494254
mov dword [ebp - 0xfc], 0x493930
push ecx
mov dword [ebp - 0xfc], 0x494270
call fcn.00407be0
add esp, 0xc
mov byte [ebp - 4], 0x38
cmp dword [ebp - 0x468], esi
jb 0x4142ba
mov edx, dword [ebp - 0x47c]
push edx
call fcn.004662f1
add esp, 4
xor eax, eax
mov dword [ebp - 0x468], 7
mov dword [ebp - 0x46c], ebx
mov word [ebp - 0x47c], ax
mov byte [ebp - 4], 0x39
cmp dword [ebp - 0x334], esi
jb 0x4142ee
mov ecx, dword [ebp - 0x348]
push ecx
call fcn.004662f1
add esp, 4
xor edx, edx
mov eax, 0x4933f4
lea ecx, [ebp - 0x32c]
mov dword [ebp - 0x334], 7
mov dword [ebp - 0x338], ebx
mov word [ebp - 0x348], dx
call fcn.004042c0
mov byte [ebp - 4], 0x3a
mov ecx, dword [edi + 0x10]
cmp dword [edi + 0x14], esi
jb 0x414327
mov eax, dword [edi]
jmp 0x414329
mov eax, edi
push 1
lea ecx, [ecx + ecx + 2]
push ecx
push eax
mov eax, dword [ebp - 0xfc]
lea edx, [ebp - 0x32c]
push edx
mov edx, dword [eax]
lea ecx, [ebp - 0xfc]
call edx
mov byte [ebp - 4], 0x39
cmp dword [ebp - 0x318], esi
jb 0x414363
mov eax, dword [ebp - 0x32c]
push eax
call fcn.004662f1
add esp, 4
xor ecx, ecx
lea edx, [ebp - 0x55c]
mov word [ebp - 0x32c], cx
push edx
lea ecx, [ebp - 0xfc]
mov dword [ebp - 0x318], 7
mov dword [ebp - 0x31c], ebx
call fcn.0042d270
mov byte [ebp - 4], 0x3b
cmp dword [eax + 0x10], ebx
setne byte [ebp - 0xabd]
mov byte [ebp - 4], 0x39
cmp dword [ebp - 0x548], esi
jb 0x4143b7
mov eax, dword [ebp - 0x55c]
push eax
call fcn.004662f1
add esp, 4
xor ecx, ecx
mov dword [ebp - 0x548], 7
mov dword [ebp - 0x54c], ebx
mov word [ebp - 0x55c], cx
cmp byte [ebp - 0xabd], bl
je 0x414465
mov eax, 0x4935c0
lea ecx, [ebp - 0x63c]
call fcn.004042c0
mov byte [ebp - 4], 0x3c
lea edx, [ebp - 0x78c]
push edx
lea ecx, [ebp - 0xfc]
call fcn.0042d270
mov byte [ebp - 4], 0x3d
push 0x4933f4
push eax
lea eax, [ebp - 0x86c]
push eax
call fcn.00404d40
add esp, 0xc
mov byte [ebp - 4], 0x3e
lea ecx, [ebp - 0x63c]
push ecx
mov ecx, dword [ebp - 0xac4]
mov edx, eax
call fcn.00422820
mov byte [ebp - 4], 0x3d
lea esi, [ebp - 0x86c]
call fcn.00401760
mov byte [ebp - 4], 0x3c
lea esi, [ebp - 0x78c]
call fcn.00401760
mov byte [ebp - 4], 0x39
lea esi, [ebp - 0x63c]
call fcn.00401760
mov esi, 8
push ebx
xor edx, edx
push edi
or eax, 0xffffffff
lea ecx, [ebp - 0xa0]
mov dword [ebp - 0x8c], 7
mov dword [ebp - 0x90], ebx
mov word [ebp - 0xa0], dx
call fcn.00401790
mov byte [ebp - 4], 0x3f
mov eax, dword [ebp - 0xa0]
cmp dword [ebp - 0x8c], esi
jae 0x4144a6
lea eax, [ebp - 0xa0]
mov ecx, dword [ebp - 0x90]
cmp word [eax + ecx*2 - 2], 0x5c
je 0x4144c6
push 1
mov eax, 0x4920c0
lea ecx, [ebp - 0xa0]
call fcn.004049a0
mov esi, dword [ebp - 0xad4]
add esi, 0xd30
push esi
lea edi, [ebp - 0xac4]
mov dword [ebp - 0xac4], 0x5c
call fcn.00409100
push 0xffffffffffffffff
lea edx, [ebp - 0x4b4]
push edx
lea ecx, [eax + 1]
mov edx, esi
call fcn.00409090
mov byte [ebp - 4], 0x40
push eax
lea eax, [ebp - 0x364]
push eax
mov edx, 0x492e80
call fcn.00418ea0
add esp, 8
mov byte [ebp - 4], 0x41
push ebx
push eax
or eax, 0xffffffff
lea esi, [ebp - 0xa0]
call fcn.00404c50
mov byte [ebp - 4], 0x40
cmp dword [ebp - 0x350], 8
jb 0x414544
mov ecx, dword [ebp - 0x364]
push ecx
call fcn.004662f1
add esp, 4
mov edi, 7
xor edx, edx
mov dword [ebp - 0x350], edi
mov dword [ebp - 0x354], ebx
mov word [ebp - 0x364], dx
mov byte [ebp - 4], 0x3f
mov esi, 8
cmp dword [ebp - 0x4a0], esi
jb 0x41457e
mov eax, dword [ebp - 0x4b4]
push eax
call fcn.004662f1
add esp, 4
xor ecx, ecx
mov word [ebp - 0x4b4], cx
mov ecx, dword [ebp - 0xa0]
mov dword [ebp - 0x4a0], edi
mov dword [ebp - 0x4a4], ebx
cmp dword [ebp - 0x8c], esi
jae 0x4145a7
lea ecx, [ebp - 0xa0]
mov esi, dword [ebp - 0xad4]
cmp dword [esi + 0xd44], 8
lea eax, [esi + 0xd30]
jb 0x4145be
mov eax, dword [eax]
push ebx
push ecx
push eax
call dword [0x48f230]
cmp dword [ebp - 0x8c], 8
mov eax, dword [ebp - 0xa0]
jae 0x4145dc
lea eax, [ebp - 0xa0]
push 0x80
push eax
call dword [fcn.0048f094]
mov edx, dword [esi + 0xe5c]
sub edx, dword [esi + 0xe58]
xor eax, eax
sar edx, 2
mov dword [ebp - 0xac4], eax
test edx, edx
je 0x41463b
mov ecx, dword [esi + 0xe58]
mov ecx, dword [ecx + eax*4]
cmp dword [ecx + 8], ebx
je 0x414621
mov ecx, dword [ecx + 8]
mov edx, dword [ecx]
mov eax, dword [edx + 4]
call eax
mov eax, dword [ebp - 0xac4]
mov ecx, dword [esi + 0xe5c]
sub ecx, dword [esi + 0xe58]
inc eax
sar ecx, 2
mov dword [ebp - 0xac4], eax
cmp eax, ecx
jb 0x414603
xor edx, edx
push 0x15
mov eax, 0x493584
lea esi, [ebp - 0x1c0]
mov dword [ebp - 0x1ac], edi
mov dword [ebp - 0x1b0], ebx
mov word [ebp - 0x1c0], dx
call fcn.00404ad0
mov byte [ebp - 4], 0x42
lea eax, [ebp - 0x5cc]
push eax
mov ecx, esi
call fcn.0041b520
add esp, 4
mov byte [ebp - 4], 0x43
cmp dword [eax + 0x10], ebx
setne byte [ebp - 0xabd]
mov byte [ebp - 4], 0x42
cmp dword [ebp - 0x5b8], 8
jb 0x4146a1
mov ecx, dword [ebp - 0x5cc]
push ecx
call fcn.004662f1
add esp, 4
xor edx, edx
mov dword [ebp - 0x5b8], edi
mov dword [ebp - 0x5bc], ebx
mov word [ebp - 0x5cc], dx
mov byte [ebp - 4], 0x3f
cmp dword [ebp - 0x1ac], 8
jb 0x4146d2
mov eax, dword [ebp - 0x1c0]
push eax
call fcn.004662f1
add esp, 4
xor ecx, ecx
mov dword [ebp - 0x1ac], edi
mov dword [ebp - 0x1b0], ebx
mov word [ebp - 0x1c0], cx
cmp byte [ebp - 0xabd], bl
je 0x4149f1
xor edx, edx
push ebx
mov eax, 0x491fc8
lea esi, [ebp - 0x214]
mov dword [ebp - 0x200], edi
mov dword [ebp - 0x204], ebx
mov word [ebp - 0x214], dx
call fcn.00404ad0
mov byte [ebp - 4], 0x44
xor eax, eax
mov word [ebp - 0x1a4], ax
push 0xa
mov eax, 0x4935d0
lea esi, [ebp - 0x1a4]
mov dword [ebp - 0x190], edi
mov dword [ebp - 0x194], ebx
call fcn.00404ad0
mov byte [ebp - 4], 0x45
xor ecx, ecx
push 0xe
mov eax, 0x491f00
lea esi, [ebp - 0x1dc]
mov dword [ebp - 0x1c8], edi
mov dword [ebp - 0x1cc], ebx
mov word [ebp - 0x1dc], cx
call fcn.00404ad0
mov byte [ebp - 4], 0x46
xor edx, edx
push 0x15
mov eax, 0x493584
lea esi, [ebp - 0x16c]
mov dword [ebp - 0x158], edi
mov dword [ebp - 0x15c], ebx
mov word [ebp - 0x16c], dx
call fcn.00404ad0
mov byte [ebp - 4], 0x47
lea eax, [ebp - 0x460]
push eax
lea ecx, [ebp - 0x1dc]
call fcn.0041b520
add esp, 4
mov esi, eax
mov byte [ebp - 4], 0x48
lea ecx, [ebp - 0x428]
push ecx
lea ecx, [ebp - 0x16c]
call fcn.0041b520
add esp, 4
mov byte [ebp - 4], 0x49
push 0x4935e8
push eax
lea edx, [ebp - 0x40c]
push edx
call fcn.00404d40
add esp, 0xc
mov byte [ebp - 4], 0x4a
lea ecx, [ebp - 0x594]
push ecx
mov edx, esi
mov ecx, eax
call fcn.00404e80
add esp, 4
mov byte [ebp - 4], 0x4b
push 0x493568
push eax
lea edx, [ebp - 0x4ec]
push edx
call fcn.00404d40
add esp, 0xc
mov byte [ebp - 4], 0x4c
lea ecx, [ebp - 0x4c]
push ecx
lea edx, [ebp - 0xa0]
push edx
push eax
lea edx, [ebp - 0x214]
lea ecx, [ebp - 0x1a4]
call fcn.0042c350
add esp, 0xc
mov byte [ebp - 4], 0x4b
cmp dword [ebp - 0x4d8], 8
jb 0x414857
mov eax, dword [ebp - 0x4ec]
push eax
call fcn.004662f1
add esp, 4
xor ecx, ecx
mov dword [ebp - 0x4d8], edi
mov dword [ebp - 0x4dc], ebx
mov word [ebp - 0x4ec], cx
mov byte [ebp - 4], 0x4a
mov esi, 8
cmp dword [ebp - 0x580], esi
jb 0x41488c
mov edx, dword [ebp - 0x594]
push edx
call fcn.004662f1
add esp, 4
xor eax, eax
mov dword [ebp - 0x580], edi
mov dword [ebp - 0x584], ebx
mov word [ebp - 0x594], ax
mov byte [ebp - 4], 0x49
cmp dword [ebp - 0x3f8], esi
jb 0x4148bc
mov ecx, dword [ebp - 0x40c]
push ecx
call fcn.004662f1
add esp, 4
xor edx, edx
mov dword [ebp - 0x3f8], edi
mov dword [ebp - 0x3fc], ebx
mov word [ebp - 0x40c], dx
mov byte [ebp - 4], 0x48
cmp dword [ebp - 0x414], esi
jb 0x4148ec
mov eax, dword [ebp - 0x428]
push eax
call fcn.004662f1
add esp, 4
xor ecx, ecx
mov dword [ebp - 0x414], edi
mov dword [ebp - 0x418], ebx
mov word [ebp - 0x428], cx
mov byte [ebp - 4], 0x47
cmp dword [ebp - 0x44c], esi
jb 0x41491c
mov edx, dword [ebp - 0x460]
push edx
call fcn.004662f1
add esp, 4
xor eax, eax
mov dword [ebp - 0x44c], edi
mov dword [ebp - 0x450], ebx
mov word [ebp - 0x460], ax
mov byte [ebp - 4], 0x46
cmp dword [ebp - 0x158], esi
jb 0x41494c
mov ecx, dword [ebp - 0x16c]
push ecx
call fcn.004662f1
add esp, 4
xor edx, edx
mov dword [ebp - 0x158], edi
mov dword [ebp - 0x15c], ebx
mov word [ebp - 0x16c], dx
mov byte [ebp - 4], 0x45
cmp dword [ebp - 0x1c8], esi
jb 0x41497c
mov eax, dword [ebp - 0x1dc]
push eax
call fcn.004662f1
add esp, 4
xor ecx, ecx
mov dword [ebp - 0x1c8], edi
mov dword [ebp - 0x1cc], ebx
mov word [ebp - 0x1dc], cx
mov byte [ebp - 4], 0x44
cmp dword [ebp - 0x190], esi
jb 0x4149ac
mov edx, dword [ebp - 0x1a4]
push edx
call fcn.004662f1
add esp, 4
xor eax, eax
mov dword [ebp - 0x190], edi
mov dword [ebp - 0x194], ebx
mov word [ebp - 0x1a4], ax
mov byte [ebp - 4], 0x3f
cmp dword [ebp - 0x200], esi
jb 0x4149dc
mov ecx, dword [ebp - 0x214]
push ecx
call fcn.004662f1
add esp, 4
xor edx, edx
mov dword [ebp - 0x200], edi
mov dword [ebp - 0x204], ebx
mov word [ebp - 0x214], dx
xor eax, eax
mov word [ebp - 0x118], ax
push 0x12
mov eax, 0x49211c
lea esi, [ebp - 0x118]
mov dword [ebp - 0x104], edi
mov dword [ebp - 0x108], ebx
call fcn.00404ad0
mov byte [ebp - 4], 0x4d
lea ecx, [ebp - 0x4d0]
push ecx
mov ecx, esi
call fcn.0041b520
add esp, 4
mov byte [ebp - 4], 0x4e
push eax
lea edx, [ebp - 0x498]
push edx
mov edx, 0x493600
call fcn.00418ea0
mov byte [ebp - 4], 0x4f
push eax
lea eax, [ebp - 0xd8]
push 0x494254
mov dword [ebp - 0xdc], 0x493930
push eax
mov dword [ebp - 0xdc], 0x494270
call fcn.00407be0
add esp, 0x14
mov byte [ebp - 4], 0x52
cmp dword [ebp - 0x484], 8
jb 0x414a8c
mov ecx, dword [ebp - 0x498]
push ecx
call fcn.004662f1
add esp, 4
xor edx, edx
mov dword [ebp - 0x484], edi
mov dword [ebp - 0x488], ebx
mov word [ebp - 0x498], dx
mov byte [ebp - 4], 0x53
mov esi, 8
cmp dword [ebp - 0x4bc], esi
jb 0x414ac1
mov eax, dword [ebp - 0x4d0]
push eax
call fcn.004662f1
add esp, 4
xor ecx, ecx
mov dword [ebp - 0x4bc], edi
mov dword [ebp - 0x4c0], ebx
mov word [ebp - 0x4d0], cx
mov byte [ebp - 4], 0x54
cmp dword [ebp - 0x104], esi
jb 0x414af1
mov edx, dword [ebp - 0x118]
push edx
call fcn.004662f1
add esp, 4
xor eax, eax
mov word [ebp - 0x118], ax
xor ecx, ecx
push 0xe
mov eax, 0x491f00
lea esi, [ebp - 0x268]
mov dword [ebp - 0x104], edi
mov dword [ebp - 0x108], ebx
mov dword [ebp - 0x254], edi
mov dword [ebp - 0x258], ebx
mov word [ebp - 0x268], cx
call fcn.00404ad0
mov byte [ebp - 4], 0x55
xor edx, edx
push 0xb
mov eax, 0x493658
lea esi, [ebp - 0x1f8]
mov dword [ebp - 0x1e4], edi
mov dword [ebp - 0x1e8], ebx
mov word [ebp - 0x1f8], dx
call fcn.00404ad0
mov byte [ebp - 4], 0x56
lea eax, [ebp - 0x508]
push eax
lea ecx, [ebp - 0x268]
call fcn.0041b520
add esp, 4
mov byte [ebp - 4], 0x57
cmp dword [eax + 0x14], 8
mov ecx, dword [eax + 0x10]
jb 0x414b80
mov eax, dword [eax]
push 1
lea ecx, [ecx + ecx + 2]
push ecx
push eax
mov eax, dword [ebp - 0xdc]
lea edx, [ebp - 0x1f8]
push edx
mov edx, dword [eax]
lea ecx, [ebp - 0xdc]
call edx
mov byte [ebp - 4], 0x56
mov esi, 8
cmp dword [ebp - 0x4f4], esi
jb 0x414bbf
mov eax, dword [ebp - 0x508]
push eax
call fcn.004662f1
add esp, 4
xor ecx, ecx
mov dword [ebp - 0x4f4], edi
mov dword [ebp - 0x4f8], ebx
mov word [ebp - 0x508], cx
mov byte [ebp - 4], 0x55
cmp dword [ebp - 0x1e4], esi
jb 0x414bef
mov edx, dword [ebp - 0x1f8]
push edx
call fcn.004662f1
add esp, 4
xor eax, eax
mov dword [ebp - 0x1e4], edi
mov dword [ebp - 0x1e8], ebx
mov word [ebp - 0x1f8], ax
mov byte [ebp - 4], 0x54
cmp dword [ebp - 0x254], esi
jb 0x414c1f
mov ecx, dword [ebp - 0x268]
push ecx
call fcn.004662f1
add esp, 4
xor eax, eax
xor edx, edx
mov word [ebp - 0x134], ax
push 0xf
mov eax, 0x493690
lea esi, [ebp - 0x134]
mov dword [ebp - 0x254], edi
mov dword [ebp - 0x258], ebx
mov word [ebp - 0x268], dx
mov dword [ebp - 0x120], edi
mov dword [ebp - 0x124], ebx
call fcn.00404ad0
mov byte [ebp - 4], 0x58
xor ecx, ecx
push 1
mov eax, 0x49368c
lea esi, [ebp - 0x230]
mov dword [ebp - 0x21c], edi
mov dword [ebp - 0x220], ebx
mov word [ebp - 0x230], cx
call fcn.00404ad0
mov byte [ebp - 4], 0x59
lea edx, [ebp - 0xa0]
push edx
lea eax, [ebp - 0x578]
push eax
mov ecx, esi
call fcn.00418fc0
mov byte [ebp - 4], 0x5a
push 0x493670
push eax
lea ecx, [ebp - 0x3f0]
push ecx
call fcn.00404d40
add esp, 0x14
mov byte [ebp - 4], 0x5b
cmp dword [eax + 0x14], 8
mov ecx, dword [eax + 0x10]
jb 0x414cc7
mov eax, dword [eax]
push 1
lea edx, [ecx + ecx + 2]
push edx
mov edx, dword [ebp - 0xdc]
push eax
lea eax, [ebp - 0x134]
push eax
mov eax, dword [edx]
lea ecx, [ebp - 0xdc]
call eax
mov byte [ebp - 4], 0x5a
mov esi, 8
cmp dword [ebp - 0x3dc], esi
jb 0x414d06
mov ecx, dword [ebp - 0x3f0]
push ecx
call fcn.004662f1
add esp, 4
xor edx, edx
mov dword [ebp - 0x3dc], edi
mov dword [ebp - 0x3e0], ebx
mov word [ebp - 0x3f0], dx
mov byte [ebp - 4], 0x59
cmp dword [ebp - 0x564], esi
jb 0x414d36
mov eax, dword [ebp - 0x578]
push eax
call fcn.004662f1
add esp, 4
xor ecx, ecx
mov dword [ebp - 0x564], edi
mov dword [ebp - 0x568], ebx
mov word [ebp - 0x578], cx
mov byte [ebp - 4], 0x58
cmp dword [ebp - 0x21c], esi
jb 0x414d66
mov edx, dword [ebp - 0x230]
push edx
call fcn.004662f1
add esp, 4
xor eax, eax
mov dword [ebp - 0x21c], edi
mov dword [ebp - 0x220], ebx
mov word [ebp - 0x230], ax
mov byte [ebp - 4], 0x54
cmp dword [ebp - 0x120], esi
jb 0x414d96
mov ecx, dword [ebp - 0x134]
push ecx
call fcn.004662f1
add esp, 4
lea eax, [ebp - 0x5b0]
xor edx, edx
push eax
lea ecx, [ebp - 0xdc]
mov dword [ebp - 0x120], edi
mov dword [ebp - 0x124], ebx
mov word [ebp - 0x134], dx
call fcn.0042d270
mov byte [ebp - 4], 0x5c
cmp dword [eax + 0x10], ebx
setne byte [ebp - 0xabd]
mov byte [ebp - 4], 0x54
cmp dword [ebp - 0x59c], esi
jb 0x414de6
mov ecx, dword [ebp - 0x5b0]
push ecx
call fcn.004662f1
add esp, 4
xor edx, edx
mov dword [ebp - 0x59c], edi
mov dword [ebp - 0x5a0], ebx
mov word [ebp - 0x5b0], dx
cmp byte [ebp - 0xabd], bl
je 0x414ea2
mov eax, 0x4935c0
lea ecx, [ebp - 0x84]
call fcn.004042c0
mov byte [ebp - 4], 0x5d
lea eax, [ebp - 0x5e8]
push eax
lea ecx, [ebp - 0xdc]
call fcn.0042d270
mov byte [ebp - 4], 0x5e
lea ecx, [ebp - 0x84]
push ecx
mov ecx, dword [ebp - 0xad4]
mov edx, eax
add ecx, 0x93c
call fcn.00422820
mov byte [ebp - 4], 0x5d
cmp dword [ebp - 0x5d4], esi
jb 0x414e66
mov edx, dword [ebp - 0x5e8]
push edx
call fcn.004662f1
add esp, 4
xor eax, eax
mov dword [ebp - 0x5d4], edi
mov dword [ebp - 0x5d8], ebx
mov word [ebp - 0x5e8], ax
mov byte [ebp - 4], 0x54
cmp dword [ebp - 0x70], esi
jb 0x414e93
mov ecx, dword [ebp - 0x84]
push ecx
call fcn.004662f1
add esp, 4
xor edx, edx
mov dword [ebp - 0x70], edi
mov dword [ebp - 0x74], ebx
mov word [ebp - 0x84], dx
lea eax, [ebp - 0x380]
push eax
lea ecx, [ebp - 0xfc]
call fcn.0042d270
mov byte [ebp - 4], 0x5f
cmp dword [eax + 0x10], ebx
setne byte [ebp - 0xabd]
mov byte [ebp - 4], 0x54
cmp dword [ebp - 0x36c], esi
jb 0x414edd
mov ecx, dword [ebp - 0x380]
push ecx
call fcn.004662f1
add esp, 4
xor edx, edx
mov dword [ebp - 0x36c], edi
mov dword [ebp - 0x370], ebx
mov word [ebp - 0x380], dx
cmp byte [ebp - 0xabd], bl
je 0x414fd6
mov eax, 0x4935c0
lea ecx, [ebp - 0x68]
call fcn.004042c0
mov byte [ebp - 4], 0x60
lea eax, [ebp - 0x3b8]
push eax
lea ecx, [ebp - 0xfc]
call fcn.0042d270
mov byte [ebp - 4], 0x61
push 0x4936b0
push eax
lea ecx, [ebp - 0x39c]
push ecx
call fcn.00404d40
add esp, 0xc
mov byte [ebp - 4], 0x62
mov ecx, dword [ebp - 0xad4]
lea edx, [ebp - 0x68]
push edx
mov edx, eax
add ecx, 0x93c
call fcn.00422820
mov byte [ebp - 4], 0x61
cmp dword [ebp - 0x388], esi
jb 0x414f70
mov eax, dword [ebp - 0x39c]
push eax
call fcn.004662f1
add esp, 4
xor ecx, ecx
mov dword [ebp - 0x388], edi
mov dword [ebp - 0x38c], ebx
mov word [ebp - 0x39c], cx
mov byte [ebp - 4], 0x60
cmp dword [ebp - 0x3a4], esi
jb 0x414fa0
mov edx, dword [ebp - 0x3b8]
push edx
call fcn.004662f1
add esp, 4
xor eax, eax
mov dword [ebp - 0x3a4], edi
mov dword [ebp - 0x3a8], ebx
mov word [ebp - 0x3b8], ax
mov byte [ebp - 4], 0x54
cmp dword [ebp - 0x54], esi
jb 0x414fca
mov ecx, dword [ebp - 0x68]
push ecx
call fcn.004662f1
add esp, 4
xor edx, edx
mov dword [ebp - 0x54], edi
mov dword [ebp - 0x58], ebx
mov word [ebp - 0x68], dx
xor eax, eax
mov word [ebp - 0x150], ax
push 9
mov eax, 0x4936b0
lea esi, [ebp - 0x150]
mov dword [ebp - 0x13c], edi
mov dword [ebp - 0x140], ebx
call fcn.00404ad0
mov byte [ebp - 4], 0x63
mov eax, dword [ebp - 0xad4]
add eax, 0x93c
push eax
mov ecx, esi
call fcn.00422d10
mov byte [ebp - 4], 0x54
cmp dword [ebp - 0x13c], 8
jb 0x415030
mov ecx, dword [ebp - 0x150]
push ecx
call fcn.004662f1
add esp, 4
xor edx, edx
mov dword [ebp - 0x13c], edi
mov dword [ebp - 0x140], ebx
mov word [ebp - 0x150], dx
mov dword [ebp - fcn.0042cfb0], 0x493930
call fcn.00410750
mov dword [ebp - 0xac4], ebx
lea ebx, [ebx]
xor eax, eax
mov dword [ebp - 0xa8], edi
mov dword [ebp - 0xac], ebx
mov word [ebp - 0xbc], ax
mov byte [ebp - 4], 0x64
mov ecx, dword [ebp - 0xac4]
push ecx
sub esp, 0x1c
mov esi, esp
mov dword [ebp - 0xad8], esp
xor edx, edx
mov dword [esi + 0x14], edi
mov dword [esi + 0x10], ebx
push 0xb
mov eax, 0x4936c4
mov word [esi], dx
call fcn.00404ad0
mov byte [ebp - 4], 0x65
mov byte [ebp - 4], 0x64
lea ecx, [ebp - 0xbc]
call fcn.00426d50
lea eax, [ebp - 0x30]
push eax
lea ecx, [ebp - 0xbc]
call fcn.0041b520
add esp, 0x24
mov byte [ebp - 4], 0x66
cmp dword [ebp - 0x20], ebx
je 0x4151f1
mov ecx, dword [ebp - 0xac4]
push ecx
sub esp, 0x1c
mov esi, esp
mov dword [ebp - 0xad8], esp
xor edx, edx
mov dword [esi + 0x14], edi
mov dword [esi + 0x10], ebx
push 0xc
mov eax, 0x4936dc
mov word [esi], dx
call fcn.00404ad0
mov byte [ebp - 4], 0x67
mov byte [ebp - 4], 0x66
lea ecx, [ebp - 0xbc]
call fcn.00426d50
lea eax, [ebp - 0x188]
push eax
lea ecx, [ebp - 0xbc]
call fcn.0041b520
add esp, 0x24
mov byte [ebp - 4], 0x68
cmp dword [ebp - 0x174], 8
mov eax, dword [ebp - 0x188]
jae 0x41513e
lea eax, [ebp - 0x188]
mov ecx, dword [ebp - 0x178]
push 1
lea edx, [ecx + ecx + 2]
push edx
mov edx, dword [ebp - 0xad0]
push eax
lea eax, [ebp - 0x30]
push eax
mov eax, dword [edx]
lea ecx, [ebp - 0xad0]
call eax
mov byte [ebp - 4], 0x66
mov esi, 8
cmp dword [ebp - 0x174], esi
jb 0x415180
mov ecx, dword [ebp - 0x188]
push ecx
call fcn.004662f1
add esp, 4
xor edx, edx
mov dword [ebp - 0x174], edi
mov dword [ebp - 0x178], ebx
mov word [ebp - 0x188], dx
mov byte [ebp - 4], 0x64
cmp dword [ebp - 0x1c], esi
jb 0x4151aa
mov eax, dword [ebp - 0x30]
push eax
call fcn.004662f1
add esp, 4
xor ecx, ecx
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x20], ebx
mov word [ebp - 0x30], cx
mov byte [ebp - 4], 0x54
cmp dword [ebp - 0xa8], esi
jb 0x4151d1
mov edx, dword [ebp - 0xbc]
push edx
call fcn.004662f1
add esp, 4
xor eax, eax
inc dword [ebp - 0xac4]
mov dword [ebp - 0xa8], edi
mov dword [ebp - 0xac], ebx
mov word [ebp - 0xbc], ax
jmp 0x415060
mov byte [ebp - 4], 0x64
mov esi, 8
cmp dword [ebp - 0x1c], esi
jb 0x41520b
mov ecx, dword [ebp - 0x30]
push ecx
call fcn.004662f1
add esp, 4
xor edx, edx
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x20], ebx
mov word [ebp - 0x30], dx
mov byte [ebp - 4], 0x54
cmp dword [ebp - 0xa8], esi
jb 0x415232
mov eax, dword [ebp - 0xbc]
push eax
call fcn.004662f1
add esp, 4
lea edx, [ebp - 0x524]
xor ecx, ecx
push edx
mov dword [ebp - 0xa8], edi
mov dword [ebp - 0xac], ebx
mov word [ebp - 0xbc], cx
call fcn.0042da10
add esp, 4
cmp dword [ebp - 0x510], 0x10
jb 0x41526e
mov eax, dword [ebp - 0x524]
push eax
call fcn.004662f1
add esp, 4
mov ecx, dword [0x4adebc]
push ecx
mov dword [ebp - 0x510], 0xf
mov dword [ebp - 0x514], ebx
mov byte [ebp - 0x524], bl
call dword [fcn.0048f204]
mov eax, dword [ebp - 0xad4]
mov edx, dword [eax + 0xdbc]
push ebx
push edx
mov dword [eax + 0xe4c], 1
mov eax, dword [eax + 4]
push 0x2b11
push eax
call dword [0x48f348]
mov byte [ebp - 4], 0x3f
cmp dword [ebp - 0xc4], esi
jb 0x4152d3
mov ecx, dword [ebp - 0xd8]
push ecx
call fcn.004662f1
add esp, 4
xor edx, edx
mov dword [ebp - 0xc4], edi
mov dword [ebp - 0xc8], ebx
mov word [ebp - 0xd8], dx
mov byte [ebp - 4], 0x39
cmp dword [ebp - 0x8c], esi
jb 0x415303
mov eax, dword [ebp - 0xa0]
push eax
call fcn.004662f1
add esp, 4
xor ecx, ecx
mov dword [ebp - 0x8c], edi
mov dword [ebp - 0x90], ebx
mov word [ebp - 0xa0], cx
mov byte [ebp - 4], 0x19
cmp dword [ebp - 0xe4], esi
jb 0x415333
mov edx, dword [ebp - 0xf8]
push edx
call fcn.004662f1
add esp, 4
xor eax, eax
mov dword [ebp - 0xe4], edi
mov dword [ebp - 0xe8], ebx
mov word [ebp - 0xf8], ax
mov byte [ebp - 4], 0x18
cmp dword [ebp - 0x2c4], esi
jb 0x415363
mov ecx, dword [ebp - 0x2d8]
push ecx
call fcn.004662f1
add esp, 4
xor edx, edx
mov dword [ebp - 0x2c4], edi
mov dword [ebp - 0x2c8], ebx
mov word [ebp - 0x2d8], dx
mov dword [ebp - 4], 0xffffffff
cmp dword [ebp - 0x38], esi
jb 0x415390
mov eax, dword [ebp - 0x4c]
push eax
call fcn.004662f1
add esp, 4
xor ecx, ecx
mov dword [ebp - 0x38], edi
mov dword [ebp - 0x3c], ebx
mov word [ebp - 0x4c], cx
jmp case.default.0x4136b7
mov dword [edi + 0xe4c], 1
jmp case.default.0x4136b7
lea esi, [edi + 0x93c]
mov eax, edi
call fcn.0042bd00
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.00465d90
mov esp, ebp
pop ebp
ret 4