Function at 0x40c390
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x62ff0e
mov eax, dword fs:[0]
push eax
sub esp, 0x8c8
mov eax, dword [0x6dc14c]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov dword [ebp - 0x87c], edi
mov eax, dword [ebp + 0xc]
xor ebx, ebx
mov esi, dword [ebp + 0x10]
mov dword [ebp - 0x878], eax
mov eax, dword [ebp + 0x14]
mov dword [ebp - 0x860], esi
mov dword [ebp - 0x870], eax
mov dword [ebp - 0x854], ebx
lea eax, [ebp - 0x84c]
mov dword [ebp - 4], ebx
xorps xmm0, xmm0
push 0x65a64c
push eax
movlpd qword [ebp - 0x8bc], xmm0
call fcn.00414f00
add esp, 8
mov esi, dword [esi]
mov ecx, eax
mov byte [ebp - 4], 1
call fcn.004a3130
mov ecx, dword [ebp - 0x860]
push eax
call dword [esi + 0x174]
lea ecx, [ebp - 0x84c]
mov byte [ebp - 4], bl
call fcn.004a2fc0
mov eax, dword [ebp - 0x870]
push 1
push ebx
push dword [eax + 0x20]
call fcn.00429390
mov esi, dword [ebp - 0x860]
push 1
push ebx
push dword [esi + 0x20]
call fcn.00429390
push 0x104
lea eax, [ebp - 0x31c]
push ebx
push eax
call fcn.006103d0
push 0x104
lea eax, [ebp - 0x524]
mov dword [ebp - 0x86c], ebx
push ebx
push eax
call fcn.006103d0
push 0x104
lea eax, [ebp - 0x628]
push ebx
push eax
call fcn.006103d0
push ebx
push 0x1a
lea eax, [ebp - 0x31c]
push eax
push ebx
call fcn.0042c950
add esp, 0x4c
lea eax, [ebp - 0x84c]
push 0x65a680
push eax
call fcn.00414db0
add esp, 8
mov ecx, eax
mov byte [ebp - 4], 2
call fcn.004a5a30
push eax
lea eax, [ebp - 0x31c]
push eax
call fcn.0042a530
add esp, 8
mov byte [ebp - 4], bl
lea ecx, [ebp - 0x84c]
call fcn.004a5910
lea ecx, [ebp - 0x31c]
lea edx, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x40c4f0
sub ecx, edx
lea eax, [ebp - 0x31c]
push ecx
push eax
lea eax, [ebp - 0x524]
push eax
call fcn.0060fe50
lea eax, [ebp - 0x84c]
push 0x65a6a4
push eax
call fcn.00414db0
add esp, 0x14
mov ecx, eax
mov byte [ebp - 4], 3
call fcn.004a5a30
push eax
lea eax, [ebp - 0x31c]
push eax
call fcn.0042a530
add esp, 8
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x84c]
call fcn.004a5910
lea eax, [ebp - 0x31c]
push eax
call fcn.0042a670
add esp, 4
test eax, eax
je 0x40c593
lea eax, [ebp - 0x84c]
push 0x65a6c0
push eax
call fcn.00414f00
add esp, 8
mov ecx, eax
mov ebx, 1
push 0
call fcn.004a3130
push eax
lea ecx, [ebp + 0x18]
call fcn.004a5af0
mov byte [ebp - 0x84d], bl
test eax, eax
js 0x40c59a
mov byte [ebp - 0x84d], 0
test bl, 1
je 0x40c5ad
lea ecx, [ebp - 0x84c]
and ebx, 0xfffffffe
call fcn.004a2fc0
cmp byte [ebp - 0x84d], 0
je 0x40c953
lea eax, [ebp - 0x86c]
mov ecx, edi
push eax
lea eax, [ebp - 0x31c]
push eax
call fcn.0040b920
test eax, eax
js 0x40c953
lea eax, [ebp - 0x864]
push 0x65a6d8
push eax
call fcn.00414db0
add esp, 8
mov ecx, eax
call fcn.004a5a30
push eax
push dword [ebp - 0x86c]
call fcn.004a7c80
add esp, 8
mov dword [ebp - 0x858], eax
lea ecx, [ebp - 0x864]
call fcn.004a5910
cmp dword [ebp - 0x858], 0
je 0x40c953
lea eax, [ebp - 0x874]
push 0x65a6d8
push eax
call fcn.00414db0
add esp, 8
mov ecx, eax
call fcn.004a5a30
lea edx, [eax + 1]
nop dword [eax]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x40c640
sub eax, edx
lea ecx, [ebp - 0x874]
add dword [ebp - 0x858], eax
call fcn.004a5910
lea eax, [ebp - 0x85c]
push 0x65a6e8
push eax
call fcn.00414db0
add esp, 8
mov ecx, eax
call fcn.004a5a30
push eax
push dword [ebp - 0x858]
call fcn.004a7c80
add esp, 8
mov dword [ebp - 0x868], eax
lea ecx, [ebp - 0x85c]
call fcn.004a5910
cmp dword [ebp - 0x868], 0
je 0x40c953
lea eax, [ebp - 0x854]
push 0x65a6e8
push eax
call fcn.00414db0
add esp, 8
mov ecx, eax
call fcn.004a5a30
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x40c6c0
sub eax, edx
lea ecx, [ebp - 0x854]
add dword [ebp - 0x868], eax
call fcn.004a5910
mov eax, dword [ebp - 0x868]
mov byte [eax], 0
lea eax, [ebp - 0x84c]
push eax
push 0x65a6fc
push dword [ebp - 0x858]
mov dword [ebp - 0x84c], 0
call fcn.00616e1a
add esp, 0xc
mov dword [ebp - 0x854], eax
test eax, eax
je 0x40c754
mov esi, eax
lea eax, [ebp - 0x524]
push esi
push eax
call fcn.0042a530
push esi
lea eax, [ebp - 0x628]
push 0x104
push eax
call fcn.00616cd4
lea eax, [ebp - 0x84c]
push eax
push 0x65a6fc
push 0
call fcn.00616e1a
mov esi, eax
add esp, 0x20
test esi, esi
jne 0x40c713
mov esi, dword [ebp - 0x860]
push dword [ebp - 0x86c]
call fcn.006169a2
push 0x104
lea eax, [ebp - 0x420]
push 0
push eax
call fcn.006103d0
push 0
push 0x1c
lea eax, [ebp - 0x420]
push eax
push 0
call fcn.0042c950
lea eax, [ebp - 0x854]
push 0x65a700
push eax
call fcn.00414db0
add esp, 0x28
mov ecx, eax
mov byte [ebp - 4], 4
call fcn.004a5a30
push eax
lea eax, [ebp - 0x420]
push eax
call fcn.0042a530
add esp, 8
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x854]
call fcn.004a5910
lea eax, [ebp - 0x628]
push eax
lea eax, [ebp - 0x420]
push eax
call fcn.0042a530
lea eax, [ebp - 0x854]
push 0x65a734
push eax
call fcn.00414db0
add esp, 0x10
mov ecx, eax
mov byte [ebp - 4], 5
call fcn.004a5a30
push eax
lea eax, [ebp - 0x420]
push eax
call fcn.0042a530
add esp, 8
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x854]
call fcn.004a5910
lea eax, [ebp - 0x420]
push eax
call fcn.0042a670
add esp, 4
test eax, eax
je 0x40c953
lea eax, [ebp - 0x420]
push eax
lea ecx, [ebp - 0x8d4]
call fcn.004a4c90
push 0
lea eax, [ebp - 0x8d4]
mov byte [ebp - 4], 6
push eax
lea eax, [ebp - 0x848]
push eax
call fcn.0040dec0
add esp, 0xc
lea ecx, [ebp - 0x8d4]
mov byte [ebp - 4], 8
call fcn.004a4d00
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x854], esp
push 0x659040
call fcn.004a3bd0
sub esp, 0x18
mov byte [ebp - 4], 9
lea eax, [ebp - 0x848]
mov ecx, esp
push eax
call fcn.004a3b90
mov ecx, edi
mov byte [ebp - 4], 8
call fcn.0040bd20
mov ecx, edx
mov dword [ebp - 0x868], eax
or eax, ecx
mov dword [ebp - 0x864], ecx
je 0x40c942
lea ecx, [ebp - 0x8b4]
call fcn.004a6f50
lea eax, [ebp - 0x854]
mov byte [ebp - 4], 0xa
push 0x65a64c
push eax
call fcn.00414f00
add esp, 8
mov ecx, eax
mov byte [ebp - 4], 0xb
call fcn.004a3130
push eax
lea ecx, [ebp - 0x8b4]
call fcn.004a7010
lea ecx, [ebp - 0x854]
mov byte [ebp - 4], 0xa
call fcn.004a2fc0
mov eax, dword [ebp - 0x868]
lea ecx, [ebp - 0x89c]
mov dword [ebp - 0x884], eax
mov eax, dword [ebp - 0x864]
mov dword [ebp - 0x880], eax
lea eax, [ebp - 0x848]
push eax
call fcn.004a6fd0
mov ecx, dword [ebp - 0x878]
lea eax, [ebp - 0x8b4]
push eax
call fcn.004a72b0
lea ecx, [ebp - 0x8b4]
call fcn.004a6f70
lea ecx, [ebp - 0x848]
mov byte [ebp - 4], 0
call fcn.004a3c20
jmp 0x40c96b
mov eax, dword [ebp - 0x8b8]
mov dword [ebp - 0x864], eax
mov eax, dword [ebp - 0x8bc]
mov dword [ebp - 0x868], eax
push 0
mov ecx, edi
call fcn.0040de90
test eax, eax
je 0x40c97f
mov ecx, edi
call fcn.0040de50
push 0x1f4
call fcn.0042e9b0
push 0x208
lea eax, [ebp - 0x218]
push 0
push eax
call fcn.006103d0
lea eax, [ebp - 0x854]
push 0x65a744
push eax
call fcn.00414f00
add esp, 0x18
mov esi, dword [esi]
mov ecx, eax
mov byte [ebp - 4], 0xc
call fcn.004a3130
mov ecx, dword [ebp - 0x860]
push eax
call dword [esi + 0x174]
lea ecx, [ebp - 0x854]
mov byte [ebp - 4], 0
call fcn.004a2fc0
mov eax, dword [ebp - 0x870]
push 1
push 0
push dword [eax + 0x20]
call fcn.00429390
mov esi, dword [ebp - 0x860]
push 1
push 0
push dword [esi + 0x20]
call fcn.00429390
push 0x104
lea eax, [ebp - 0x218]
push 0
push eax
call fcn.006103d0
push 0
push 0x20
lea eax, [ebp - 0x218]
push eax
push 0
call fcn.0042ca00
lea eax, [ebp - 0x218]
push eax
call fcn.0042a710
add esp, 0x38
test eax, eax
je 0x40ca69
lea eax, [ebp - 0x854]
push 0x65a778
push eax
call fcn.00414f00
add esp, 8
mov ecx, eax
or ebx, 2
push 0
call fcn.004a3130
push eax
lea ecx, [ebp + 0x18]
call fcn.004a5af0
mov byte [ebp - 0x84d], 1
test eax, eax
js 0x40ca70
mov byte [ebp - 0x84d], 0
test bl, 2
je 0x40ca83
lea ecx, [ebp - 0x854]
and ebx, 0xfffffffd
call fcn.004a2fc0
cmp byte [ebp - 0x84d], 0
je 0x40cba6
lea eax, [ebp - 0x854]
push 0x65a78c
push eax
call fcn.00414f00
sub esp, 0x10
mov byte [ebp - 4], 0xd
mov ecx, eax
mov dword [ebp - 0x85c], esp
mov esi, esp
call fcn.004a3130
push eax
mov ecx, esi
call fcn.004a3bd0
sub esp, 0x18
mov byte [ebp - 4], 0xe
lea eax, [ebp - 0x218]
mov ecx, esp
push eax
call fcn.004a3bd0
mov ecx, edi
mov byte [ebp - 4], 0xd
call fcn.0040bd20
lea ecx, [ebp - 0x854]
mov dword [ebp - 0x84c], edx
mov esi, eax
mov byte [ebp - 4], 0
call fcn.004a2fc0
add dword [ebp - 0x868], esi
mov eax, esi
mov ecx, dword [ebp - 0x84c]
adc dword [ebp - 0x864], ecx
or eax, ecx
je 0x40cba0
lea ecx, [ebp - 0x8b4]
call fcn.004a6f50
lea eax, [ebp - 0x854]
mov byte [ebp - 4], 0xf
push 0x65a744
push eax
call fcn.00414f00
add esp, 8
mov ecx, eax
mov byte [ebp - 4], 0x10
call fcn.004a3130
push eax
lea ecx, [ebp - 0x8b4]
call fcn.004a7010
lea ecx, [ebp - 0x854]
mov byte [ebp - 4], 0xf
call fcn.004a2fc0
mov eax, dword [ebp - 0x84c]
lea ecx, [ebp - 0x89c]
mov dword [ebp - 0x880], eax
lea eax, [ebp - 0x218]
push eax
mov dword [ebp - 0x884], esi
call fcn.004a7010
mov ecx, dword [ebp - 0x878]
lea eax, [ebp - 0x8b4]
push eax
call fcn.004a72b0
lea ecx, [ebp - 0x8b4]
mov byte [ebp - 4], 0
call fcn.004a6f70
mov esi, dword [ebp - 0x860]
push 0
mov ecx, edi
call fcn.0040de90
test eax, eax
je 0x40cbba
mov ecx, edi
call fcn.0040de50
push 0x1f4
call fcn.0042e9b0
lea eax, [ebp - 0x854]
push 0x65a7a4
push eax
call fcn.00414f00
add esp, 0xc
mov esi, dword [esi]
mov ecx, eax
mov byte [ebp - 4], 0x11
call fcn.004a3130
mov ecx, dword [ebp - 0x860]
push eax
call dword [esi + 0x174]
lea ecx, [ebp - 0x854]
mov byte [ebp - 4], 0
call fcn.004a2fc0
mov eax, dword [ebp - 0x870]
push 1
push 0
push dword [eax + 0x20]
call fcn.00429390
mov esi, dword [ebp - 0x860]
push 1
push 0
push dword [esi + 0x20]
call fcn.00429390
push 0x104
lea eax, [ebp - 0x218]
push 0
push eax
call fcn.006103d0
push 0
push 0x24
lea eax, [ebp - 0x218]
push eax
push 0
call fcn.0042ca00
lea eax, [ebp - 0x854]
push 0x65a7a4
push eax
call fcn.00414f00
add esp, 0x3c
mov ecx, eax
mov byte [ebp - 4], 0x12
call fcn.004a3130
push eax
lea eax, [ebp - 0x218]
push eax
call fcn.0042a5d0
add esp, 8
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x854]
call fcn.004a2fc0
lea eax, [ebp - 0x218]
push eax
call fcn.0042a710
add esp, 4
test eax, eax
je 0x40cccf
lea eax, [ebp - 0x854]
push 0x65a7d8
push eax
call fcn.00414f00
add esp, 8
mov ecx, eax
or ebx, 4
push 0
call fcn.004a3130
push eax
lea ecx, [ebp + 0x18]
call fcn.004a5af0
mov byte [ebp - 0x84d], 1
test eax, eax
js 0x40ccd6
mov byte [ebp - 0x84d], 0
test bl, 4
je 0x40cce9
lea ecx, [ebp - 0x854]
and ebx, 0xfffffffb
call fcn.004a2fc0
cmp byte [ebp - 0x84d], 0
je 0x40ce0c
lea eax, [ebp - 0x854]
push 0x65a78c
push eax
call fcn.00414f00
sub esp, 0x10
mov byte [ebp - 4], 0x13
mov ecx, eax
mov dword [ebp - 0x85c], esp
mov esi, esp
call fcn.004a3130
push eax
mov ecx, esi
call fcn.004a3bd0
sub esp, 0x18
mov byte [ebp - 4], 0x14
lea eax, [ebp - 0x218]
mov ecx, esp
push eax
call fcn.004a3bd0
mov ecx, edi
mov byte [ebp - 4], 0x13
call fcn.0040bd20
lea ecx, [ebp - 0x854]
mov dword [ebp - 0x84c], edx
mov esi, eax
mov byte [ebp - 4], 0
call fcn.004a2fc0
add dword [ebp - 0x868], esi
mov eax, esi
mov ecx, dword [ebp - 0x84c]
adc dword [ebp - 0x864], ecx
or eax, ecx
je 0x40ce06
lea ecx, [ebp - 0x8b4]
call fcn.004a6f50
lea eax, [ebp - 0x854]
mov byte [ebp - 4], 0x15
push 0x65a7f0
push eax
call fcn.00414f00
add esp, 8
mov ecx, eax
mov byte [ebp - 4], 0x16
call fcn.004a3130
push eax
lea ecx, [ebp - 0x8b4]
call fcn.004a7010
lea ecx, [ebp - 0x854]
mov byte [ebp - 4], 0x15
call fcn.004a2fc0
mov eax, dword [ebp - 0x84c]
lea ecx, [ebp - 0x89c]
mov dword [ebp - 0x880], eax
lea eax, [ebp - 0x218]
push eax
mov dword [ebp - 0x884], esi
call fcn.004a7010
mov ecx, dword [ebp - 0x878]
lea eax, [ebp - 0x8b4]
push eax
call fcn.004a72b0
lea ecx, [ebp - 0x8b4]
mov byte [ebp - 4], 0
call fcn.004a6f70
mov esi, dword [ebp - 0x860]
push 0
mov ecx, edi
call fcn.0040de90
test eax, eax
je 0x40ce20
mov ecx, edi
call fcn.0040de50
push 0x1f4
call fcn.0042e9b0
lea eax, [ebp - 0x854]
push 0x65a834
push eax
call fcn.00414f00
add esp, 0xc
mov esi, dword [esi]
mov ecx, eax
mov byte [ebp - 4], 0x17
call fcn.004a3130
mov ecx, dword [ebp - 0x860]
push eax
call dword [esi + 0x174]
lea ecx, [ebp - 0x854]
mov byte [ebp - 4], 0
call fcn.004a2fc0
mov eax, dword [ebp - 0x870]
push 1
push 0
push dword [eax + 0x20]
call fcn.00429390
mov esi, dword [ebp - 0x860]
push 1
push 0
push dword [esi + 0x20]
call fcn.00429390
push 0x14
call fcn.004c21ad
add esp, 0x1c
mov dword [ebp - 0x858], eax
test eax, eax
je 0x40cebd
mov dword [eax + 4], 0
mov dword [eax + 8], 0
mov dword [eax + 0xc], 0
mov dword [eax + 0x10], 0
jmp 0x40cec5
xor eax, eax
mov dword [ebp - 0x858], eax
push eax
push 0
mov dword [eax], 0x14
call fcn.0042cb60
add esp, 8
test eax, eax
jne 0x40cf0e
lea eax, [ebp - 0x854]
push 0x65a850
push eax
call fcn.00414f00
add esp, 8
mov ecx, eax
or ebx, 8
push 0
call fcn.004a3130
push eax
lea ecx, [ebp + 0x18]
call fcn.004a5af0
mov byte [ebp - 0x84d], 1
test eax, eax
js 0x40cf15
mov byte [ebp - 0x84d], 0
test bl, 8
je 0x40cf28
lea ecx, [ebp - 0x854]
and ebx, 0xfffffff7
call fcn.004a2fc0
cmp byte [ebp - 0x84d], 0
mov ecx, dword [ebp - 0x858]
je 0x40cff3
mov eax, dword [ecx + 4]
or eax, dword [ecx + 8]
je 0x40cff3
lea ecx, [ebp - 0x8b4]
call fcn.004a6f50
lea eax, [ebp - 0x854]
mov byte [ebp - 4], 0x18
push 0x65a834
push eax
call fcn.00414f00
add esp, 8
mov ecx, eax
mov byte [ebp - 4], 0x19
call fcn.004a3130
push eax
lea ecx, [ebp - 0x8b4]
call fcn.004a7010
lea ecx, [ebp - 0x854]
mov byte [ebp - 4], 0x18
call fcn.004a2fc0
mov ecx, dword [ebp - 0x858]
mov eax, dword [ecx + 4]
mov dword [ebp - 0x884], eax
mov eax, dword [ecx + 8]
mov ecx, dword [ebp - 0x878]
mov dword [ebp - 0x880], eax
lea eax, [ebp - 0x8b4]
push eax
call fcn.004a72b0
mov ecx, dword [ebp - 0x858]
mov eax, dword [ebp - 0x868]
mov byte [ebp - 4], 0
add eax, dword [ecx + 4]
mov dword [ebp - 0x868], eax
mov eax, dword [ebp - 0x864]
adc eax, dword [ecx + 8]
lea ecx, [ebp - 0x8b4]
mov dword [ebp - 0x864], eax
call fcn.004a6f70
mov ecx, dword [ebp - 0x858]
push 0x14
push ecx
call fcn.0060e215
add esp, 8
mov ecx, edi
push 0
call fcn.0040de90
test eax, eax
je 0x40d012
mov ecx, edi
call fcn.0040de50
push 0x1f4
call fcn.0042e9b0
lea eax, [ebp - 0x854]
push 0x65a868
push eax
call fcn.00414f00
add esp, 0xc
mov esi, dword [esi]
mov ecx, eax
mov byte [ebp - 4], 0x1a
call fcn.004a3130
mov ecx, dword [ebp - 0x860]
push eax
call dword [esi + 0x174]
lea ecx, [ebp - 0x854]
mov byte [ebp - 4], 0
call fcn.004a2fc0
mov eax, dword [ebp - 0x870]
push 1
push 0
push dword [eax + 0x20]
call fcn.00429390
mov esi, dword [ebp - 0x860]
push 1
push 0
push dword [esi + 0x20]
call fcn.00429390
push 0x208
lea eax, [ebp - 0x830]
push 0
push eax
call fcn.006103d0
lea eax, [ebp - 0x830]
push eax
push 0x104
call fcn.00427e00
lea eax, [ebp - 0x830]
push eax
call fcn.0042a710
add esp, 0x30
test eax, eax
je 0x40d0e8
lea eax, [ebp - 0x854]
push 0x65a88c
push eax
call fcn.00414f00
add esp, 8
mov ecx, eax
or ebx, 0x10
push 0
call fcn.004a3130
push eax
lea ecx, [ebp + 0x18]
call fcn.004a5af0
mov byte [ebp - 0x84d], 1
test eax, eax
js 0x40d0ef
mov byte [ebp - 0x84d], 0
test bl, 0x10
je 0x40d102
lea ecx, [ebp - 0x854]
and ebx, 0xffffffef
call fcn.004a2fc0
cmp byte [ebp - 0x84d], 0
je 0x40d1fa
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x854], esp
push 0x659040
call fcn.004a3bd0
sub esp, 0x18
mov byte [ebp - 4], 0x1b
lea eax, [ebp - 0x830]
mov ecx, esp
push eax
call fcn.004a3bd0
mov ecx, edi
mov byte [ebp - 4], 0
call fcn.0040bd20
add dword [ebp - 0x868], eax
mov ecx, edx
mov dword [ebp - 0x85c], eax
adc dword [ebp - 0x864], ecx
or eax, ecx
mov dword [ebp - 0x874], ecx
je 0x40d1fa
lea ecx, [ebp - 0x8b4]
call fcn.004a6f50
lea eax, [ebp - 0x854]
mov byte [ebp - 4], 0x1c
push 0x65a868
push eax
call fcn.00414f00
add esp, 8
mov ecx, eax
mov byte [ebp - 4], 0x1d
call fcn.004a3130
push eax
lea ecx, [ebp - 0x8b4]
call fcn.004a7010
lea ecx, [ebp - 0x854]
mov byte [ebp - 4], 0x1c
call fcn.004a2fc0
mov eax, dword [ebp - 0x85c]
lea ecx, [ebp - 0x89c]
mov dword [ebp - 0x884], eax
mov eax, dword [ebp - 0x874]
mov dword [ebp - 0x880], eax
lea eax, [ebp - 0x830]
push eax
call fcn.004a7010
mov ecx, dword [ebp - 0x878]
lea eax, [ebp - 0x8b4]
push eax
call fcn.004a72b0
lea ecx, [ebp - 0x8b4]
mov byte [ebp - 4], 0
call fcn.004a6f70
push 0
mov ecx, edi
call fcn.0040de90
test eax, eax
je 0x40d20e
mov ecx, edi
call fcn.0040de50
push 0x1f4
call fcn.0042e9b0
lea eax, [ebp - 0x854]
push 0x65a8a0
push eax
call fcn.00414f00
add esp, 0xc
mov esi, dword [esi]
mov ecx, eax
mov byte [ebp - 4], 0x1e
call fcn.004a3130
mov ecx, dword [ebp - 0x860]
push eax
call dword [esi + 0x174]
lea ecx, [ebp - 0x854]
mov byte [ebp - 4], 0
call fcn.004a2fc0
mov eax, dword [ebp - 0x870]
push 1
push 0
push dword [eax + 0x20]
call fcn.00429390
mov esi, dword [ebp - 0x860]
push 1
push 0
push dword [esi + 0x20]
call fcn.00429390
push 0x104
lea eax, [ebp - 0x218]
push 0
push eax
call fcn.006103d0
push 0
push 0x24
lea eax, [ebp - 0x218]
push eax
push 0
call fcn.0042ca00
lea eax, [ebp - 0x218]
push eax
call fcn.0042a710
add esp, 0x38
test eax, eax
je 0x40d2e5
lea eax, [ebp - 0x854]
push 0x65a8b8
push eax
call fcn.00414f00
add esp, 8
mov ecx, eax
or ebx, 0x20
push 0
call fcn.004a3130
push eax
lea ecx, [ebp + 0x18]
call fcn.004a5af0
mov byte [ebp - 0x84d], 1
test eax, eax
js 0x40d2ec
mov byte [ebp - 0x84d], 0
test bl, 0x20
je 0x40d2ff
lea ecx, [ebp - 0x854]
and ebx, 0xffffffdf
call fcn.004a2fc0
cmp byte [ebp - 0x84d], 0
je 0x40d6fe
push 0
sub esp, 0x18
lea eax, [ebp - 0x218]
mov ecx, esp
push eax
call fcn.004a3bd0
mov ecx, edi
call fcn.0040bf90
push 1
mov dword [ebp - 0x858], eax
lea eax, [ebp - 0x85c]
push 0x65a8d0
push eax
mov dword [ebp - 0x86c], edx
call fcn.00414f00
add esp, 8
mov dword [ebp - 0x854], eax
lea eax, [ebp - 0x218]
mov byte [ebp - 4], 0x1f
push eax
lea ecx, [ebp - 0x8d4]
call fcn.004a3bd0
mov edi, eax
mov ecx, dword [ebp - 0x854]
sub esp, 0x18
mov byte [ebp - 4], 0x20
mov esi, esp
call fcn.004a3130
push eax
push edi
push esi
call fcn.004a6940
mov ecx, dword [ebp - 0x87c]
add esp, 0xc
call fcn.0040bf90
add dword [ebp - 0x858], eax
lea ecx, [ebp - 0x8d4]
adc dword [ebp - 0x86c], edx
call fcn.004a3c20
lea ecx, [ebp - 0x85c]
mov byte [ebp - 4], 0
call fcn.004a2fc0
push 1
lea eax, [ebp - 0x85c]
push 0x65a8fc
push eax
call fcn.00414f00
add esp, 8
mov dword [ebp - 0x854], eax
lea eax, [ebp - 0x218]
mov byte [ebp - 4], 0x21
push eax
lea ecx, [ebp - 0x8d4]
call fcn.004a3bd0
mov edi, eax
mov ecx, dword [ebp - 0x854]
sub esp, 0x18
mov byte [ebp - 4], 0x22
mov esi, esp
call fcn.004a3130
push eax
push edi
push esi
call fcn.004a6940
mov ecx, dword [ebp - 0x87c]
add esp, 0xc
call fcn.0040bf90
add dword [ebp - 0x858], eax
lea ecx, [ebp - 0x8d4]
adc dword [ebp - 0x86c], edx
call fcn.004a3c20
lea ecx, [ebp - 0x85c]
mov byte [ebp - 4], 0
call fcn.004a2fc0
push 1
push 0x65a908
lea eax, [ebp - 0x85c]
push eax
call fcn.00414f00
add esp, 8
mov dword [ebp - 0x854], eax
lea eax, [ebp - 0x218]
mov byte [ebp - 4], 0x23
push eax
lea ecx, [ebp - 0x8d4]
call fcn.004a3bd0
mov edi, eax
mov ecx, dword [ebp - 0x854]
sub esp, 0x18
mov byte [ebp - 4], 0x24
mov esi, esp
call fcn.004a3130
push eax
push edi
push esi
call fcn.004a6940
mov ecx, dword [ebp - 0x87c]
add esp, 0xc
call fcn.0040bf90
add dword [ebp - 0x858], eax
lea ecx, [ebp - 0x8d4]
adc dword [ebp - 0x86c], edx
call fcn.004a3c20
lea ecx, [ebp - 0x85c]
mov byte [ebp - 4], 0
call fcn.004a2fc0
push 1
lea eax, [ebp - 0x85c]
push 0x65a928
push eax
call fcn.00414f00
add esp, 8
mov dword [ebp - 0x854], eax
lea eax, [ebp - 0x218]
mov byte [ebp - 4], 0x25
push eax
lea ecx, [ebp - 0x8d4]
call fcn.004a3bd0
mov edi, eax
mov ecx, dword [ebp - 0x854]
sub esp, 0x18
mov byte [ebp - 4], 0x26
mov esi, esp
call fcn.004a3130
push eax
push edi
push esi
call fcn.004a6940
mov ecx, dword [ebp - 0x87c]
add esp, 0xc
call fcn.0040bf90
add dword [ebp - 0x858], eax
lea ecx, [ebp - 0x8d4]
adc dword [ebp - 0x86c], edx
call fcn.004a3c20
lea ecx, [ebp - 0x85c]
mov byte [ebp - 4], 0
call fcn.004a2fc0
push 1
lea eax, [ebp - 0x85c]
push 0x65a938
push eax
call fcn.00414f00
add esp, 8
mov dword [ebp - 0x854], eax
lea eax, [ebp - 0x218]
mov byte [ebp - 4], 0x27
push eax
lea ecx, [ebp - 0x8d4]
call fcn.004a3bd0
mov edi, eax
mov byte [ebp - 4], 0x28
mov ecx, dword [ebp - 0x854]
sub esp, 0x18
mov esi, esp
call fcn.004a3130
push eax
push edi
push esi
call fcn.004a6940
mov ecx, dword [ebp - 0x87c]
add esp, 0xc
call fcn.0040bf90
add dword [ebp - 0x858], eax
lea ecx, [ebp - 0x8d4]
adc dword [ebp - 0x86c], edx
call fcn.004a3c20
lea ecx, [ebp - 0x85c]
mov byte [ebp - 4], 0
call fcn.004a2fc0
push 1
lea eax, [ebp - 0x85c]
push 0x65a948
push eax
call fcn.00414f00
add esp, 8
mov dword [ebp - 0x854], eax
lea eax, [ebp - 0x218]
mov byte [ebp - 4], 0x29
push eax
lea ecx, [ebp - 0x8d4]
call fcn.004a3bd0
mov edi, eax
mov ecx, dword [ebp - 0x854]
sub esp, 0x18
mov byte [ebp - 4], 0x2a
mov esi, esp
call fcn.004a3130
push eax
push edi
push esi
call fcn.004a6940
mov edi, dword [ebp - 0x87c]
add esp, 0xc
mov ecx, edi
call fcn.0040bf90
mov esi, dword [ebp - 0x858]
lea ecx, [ebp - 0x8d4]
add esi, eax
adc dword [ebp - 0x86c], edx
call fcn.004a3c20
lea ecx, [ebp - 0x85c]
mov byte [ebp - 4], 0
call fcn.004a2fc0
add dword [ebp - 0x868], esi
mov eax, esi
mov ecx, dword [ebp - 0x86c]
adc dword [ebp - 0x864], ecx
or eax, ecx
je 0x40d6f8
lea ecx, [ebp - 0x8b4]
call fcn.004a6f50
lea eax, [ebp - 0x854]
mov byte [ebp - 4], 0x2b
push 0x65a960
push eax
call fcn.00414f00
add esp, 8
mov ecx, eax
mov byte [ebp - 4], 0x2c
call fcn.004a3130
push eax
lea ecx, [ebp - 0x8b4]
call fcn.004a7010
lea ecx, [ebp - 0x854]
mov byte [ebp - 4], 0x2b
call fcn.004a2fc0
mov eax, dword [ebp - 0x86c]
lea ecx, [ebp - 0x89c]
mov dword [ebp - 0x880], eax
lea eax, [ebp - 0x218]
push eax
mov dword [ebp - 0x884], esi
call fcn.004a7010
mov ecx, dword [ebp - 0x878]
lea eax, [ebp - 0x8b4]
push eax
call fcn.004a72b0
lea ecx, [ebp - 0x8b4]
mov byte [ebp - 4], 0
call fcn.004a6f70
mov esi, dword [ebp - 0x860]
push 0
mov ecx, edi
call fcn.0040de90
test eax, eax
je 0x40d712
mov ecx, edi
call fcn.0040de50
push 0x1f4
call fcn.0042e9b0
lea eax, [ebp - 0x854]
push 0x65a978
push eax
call fcn.00414f00
add esp, 0xc
mov esi, dword [esi]
mov ecx, eax
mov byte [ebp - 4], 0x2d
call fcn.004a3130
mov ecx, dword [ebp - 0x860]
push eax
call dword [esi + 0x174]
lea ecx, [ebp - 0x854]
mov byte [ebp - 4], 0
call fcn.004a2fc0
mov eax, dword [ebp - 0x870]
push 1
push 0
push dword [eax + 0x20]
call fcn.00429390
mov eax, dword [ebp - 0x860]
push 1
push 0
push dword [eax + 0x20]
call fcn.00429390
push 0x104
lea eax, [ebp - 0x218]
xorps xmm0, xmm0
push 0
push eax
movlpd qword [ebp - 0x8bc], xmm0
call fcn.006103d0
push 0
push 0x24
lea eax, [ebp - 0x218]
push eax
push 0
call fcn.0042ca00
lea eax, [ebp - 0x85c]
push 0x65a9c8
push eax
call fcn.00414f00
add esp, 0x3c
mov ecx, eax
mov byte [ebp - 4], 0x2e
call fcn.004a3130
push eax
lea eax, [ebp - 0x218]
push eax
call fcn.0042a5d0
add esp, 8
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x85c]
call fcn.004a2fc0
lea eax, [ebp - 0x218]
push eax
call fcn.0042a710
add esp, 4
test eax, eax
je 0x40d82e
sub esp, 0x18
lea eax, [ebp - 0x218]
mov ecx, esp
push eax
call fcn.004a3bd0
mov ecx, edi
call fcn.0040c310
mov esi, dword [ebp - 0x868]
xor ecx, ecx
add esi, eax
mov dword [ebp - 0x858], ecx
adc dword [ebp - 0x864], ecx
jmp 0x40d846
mov eax, dword [ebp - 0x8b8]
mov esi, dword [ebp - 0x868]
mov dword [ebp - 0x858], eax
mov eax, dword [ebp - 0x8bc]
push 0x104
mov dword [ebp - 0x870], eax
lea eax, [ebp - 0x218]
push 0
push eax
call fcn.006103d0
push 0
push 0x24
lea eax, [ebp - 0x218]
push eax
push 0
call fcn.0042ca00
lea eax, [ebp - 0x854]
push 0x65a9e0
push eax
call fcn.00414f00
add esp, 0x24
mov ecx, eax
mov byte [ebp - 4], 0x2f
call fcn.004a3130
push eax
lea eax, [ebp - 0x218]
push eax
call fcn.0042a5d0
add esp, 8
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x854]
call fcn.004a2fc0
lea eax, [ebp - 0x218]
push eax
call fcn.0042a710
add esp, 4
test eax, eax
je 0x40d900
push 1
sub esp, 0x18
lea eax, [ebp - 0x218]
mov ecx, esp
push eax
call fcn.004a3bd0
mov ecx, edi
call fcn.0040ba00
mov ecx, dword [ebp - 0x870]
add ecx, eax
mov eax, dword [ebp - 0x858]
mov dword [ebp - 0x870], ecx
adc eax, edx
add esi, ecx
mov dword [ebp - 0x858], eax
adc dword [ebp - 0x864], eax
push 0x104
lea eax, [ebp - 0x218]
push 0
push eax
call fcn.006103d0
push 0
push 0x23
lea eax, [ebp - 0x218]
push eax
push 0
call fcn.0042ca00
lea eax, [ebp - 0x854]
push 0x65a9f4
push eax
call fcn.00414f00
add esp, 0x24
mov ecx, eax
mov byte [ebp - 4], 0x30
call fcn.004a3130
push eax
lea eax, [ebp - 0x218]
push eax
call fcn.0042a5d0
add esp, 8
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x854]
call fcn.004a2fc0
lea eax, [ebp - 0x218]
push eax
call fcn.0042a710
add esp, 4
test eax, eax
je 0x40da12
push 1
sub esp, 0x18
lea eax, [ebp - 0x218]
mov ecx, esp
push eax
call fcn.004a3bd0
mov ecx, edi
call fcn.0040db60
add dword [ebp - 0x870], eax
lea eax, [ebp - 0x218]
push 0x104
adc dword [ebp - 0x858], edx
push 0
push eax
call fcn.006103d0
push 0
push 0x28
lea eax, [ebp - 0x218]
push eax
push 0
call fcn.0042ca00
lea eax, [ebp - 0x854]
push 0x65aa28
push eax
call fcn.00414f00
add esp, 0x24
mov ecx, eax
mov byte [ebp - 4], 0x31
call fcn.004a3130
push eax
lea eax, [ebp - 0x218]
push eax
call fcn.0042a5d0
add esp, 8
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x854]
call fcn.004a2fc0
lea eax, [ebp - 0x218]
push eax
call fcn.0042a710
add esp, 4
mov eax, dword [ebp - 0x870]
or eax, dword [ebp - 0x858]
je 0x40da54
lea eax, [ebp - 0x854]
push 0x65aa74
push eax
call fcn.00414f00
add esp, 8
mov ecx, eax
or ebx, 0x40
push 0
call fcn.004a3130
push eax
lea ecx, [ebp + 0x18]
call fcn.004a5af0
mov byte [ebp - 0x84d], 1
test eax, eax
js 0x40da5b
mov byte [ebp - 0x84d], 0
test bl, 0x40
je 0x40da6b
lea ecx, [ebp - 0x854]
call fcn.004a2fc0
cmp byte [ebp - 0x84d], 0
je 0x40db0a
lea ecx, [ebp - 0x8b4]
call fcn.004a6f50
lea eax, [ebp - 0x854]
mov byte [ebp - 4], 0x32
push 0x65a978
push eax
call fcn.00414f00
add esp, 8
mov ecx, eax
mov byte [ebp - 4], 0x33
call fcn.004a3130
push eax
lea ecx, [ebp - 0x8b4]
call fcn.004a7010
lea ecx, [ebp - 0x854]
mov byte [ebp - 4], 0x32
call fcn.004a2fc0
mov eax, dword [ebp - 0x858]
mov ebx, dword [ebp - 0x870]
mov ecx, dword [ebp - 0x878]
mov dword [ebp - 0x880], eax
lea eax, [ebp - 0x8b4]
push eax
mov dword [ebp - 0x884], ebx
call fcn.004a72b0
add esi, ebx
mov byte [ebp - 4], 0
mov ebx, dword [ebp - 0x864]
lea ecx, [ebp - 0x8b4]
adc ebx, dword [ebp - 0x858]
call fcn.004a6f70
jmp 0x40db10
mov ebx, dword [ebp - 0x864]
push 0
mov ecx, edi
call fcn.0040de90
test eax, eax
je 0x40db24
mov ecx, edi
call fcn.0040de50
push 0x1f4
call fcn.0042e9b0
add esp, 4
lea ecx, [ebp + 0x18]
call fcn.004a2fc0
mov eax, esi
mov edx, ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0060e1e1
mov esp, ebp
pop ebp
ret 0x14