Function at 0x40f120
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x47a242
mov eax, dword fs:[0]
push eax
sub esp, 0x1fc
mov eax, dword [0x49e2f4]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0xdc], edx
mov edi, ecx
mov dword [ebp - 0xac], edi
mov eax, dword [edi]
mov eax, dword [eax + 4]
mov eax, dword [eax + edi + 0x30]
mov ecx, dword [eax + 4]
mov dword [ebp - 0x84], ecx
mov eax, dword [ecx]
call dword [eax + 4]
lea eax, [ebp - 0x88]
mov dword [ebp - 4], 0
push eax
call fcn.0040de20
add esp, 4
mov ecx, dword [eax]
push 0x3b
mov edx, dword [ecx + 0x20]
mov ecx, eax
call edx
mov ecx, dword [ebp - 0x84]
mov byte [ebp - 0x76], al
test ecx, ecx
je 0x40f1b5
mov edx, dword [ecx]
mov edx, dword [edx + 8]
call edx
test eax, eax
je 0x40f1b5
mov ecx, dword [eax]
push 1
mov edx, dword [ecx]
mov ecx, eax
call edx
mov eax, dword [edi]
mov eax, dword [eax + 4]
mov eax, dword [eax + edi + 0x30]
mov ecx, dword [eax + 4]
mov dword [ebp - 0x84], ecx
mov eax, dword [ecx]
call dword [eax + 4]
lea eax, [ebp - 0x88]
mov dword [ebp - 4], 1
push eax
call fcn.0040de20
add esp, 4
mov ecx, dword [eax]
push 0x23
mov edx, dword [ecx + 0x20]
mov ecx, eax
call edx
mov ecx, dword [ebp - 0x84]
mov byte [ebp - 0x77], al
test ecx, ecx
je 0x40f20f
mov edx, dword [ecx]
mov edx, dword [edx + 8]
call edx
test eax, eax
je 0x40f20f
mov ecx, dword [eax]
push 1
mov edx, dword [ecx]
mov ecx, eax
call edx
mov eax, dword [edi]
mov eax, dword [eax + 4]
mov eax, dword [eax + edi + 0x30]
mov ecx, dword [eax + 4]
mov dword [ebp - 0x84], ecx
mov eax, dword [ecx]
call dword [eax + 4]
lea eax, [ebp - 0x88]
mov dword [ebp - 4], 2
push eax
call fcn.0040de20
add esp, 4
mov ecx, dword [eax]
push 0x5b
mov edx, dword [ecx + 0x20]
mov ecx, eax
call edx
mov ecx, dword [ebp - 0x84]
mov byte [ebp - 0x78], al
test ecx, ecx
je 0x40f269
mov edx, dword [ecx]
mov edx, dword [edx + 8]
call edx
test eax, eax
je 0x40f269
mov ecx, dword [eax]
push 1
mov edx, dword [ecx]
mov ecx, eax
call edx
mov eax, dword [edi]
mov eax, dword [eax + 4]
mov eax, dword [eax + edi + 0x30]
mov ecx, dword [eax + 4]
mov dword [ebp - 0x84], ecx
mov eax, dword [ecx]
call dword [eax + 4]
lea eax, [ebp - 0x88]
mov dword [ebp - 4], 3
push eax
call fcn.0040de20
add esp, 4
mov ecx, dword [eax]
push 0x5d
mov edx, dword [ecx + 0x20]
mov ecx, eax
call edx
mov ecx, dword [ebp - 0x84]
mov byte [ebp - 0x79], al
test ecx, ecx
je 0x40f2c3
mov edx, dword [ecx]
mov edx, dword [edx + 8]
call edx
test eax, eax
je 0x40f2c3
mov ecx, dword [eax]
push 1
mov edx, dword [ecx]
mov ecx, eax
call edx
xorps xmm0, xmm0
mov dword [ebp - 0x2c], 0
movlpd qword [ebp - 0x34], xmm0
movups xmmword [ebp - 0x44], xmm0
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x30], 0xf
mov byte [ebp - 0x44], 0
push 0x10
mov dword [ebp - 4], 4
call fcn.0044fafe
add esp, 4
mov dword [ebp - 0x8c], eax
mov ecx, eax
mov byte [ebp - 4], 5
call fcn.00413a60
mov dword [ebp - 0x2c], eax
mov dword [ebp - 4], 6
xor ecx, ecx
xorps xmm0, xmm0
mov dword [ebp - 0xa8], ecx
movups xmmword [ebp - 0x28], xmm0
mov dword [ebp - 0x18], ecx
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], cl
mov byte [ebp - 4], 7
mov eax, dword [edi]
mov eax, dword [eax + 4]
cmp dword [eax + edi + 0xc], ecx
jne 0x40fd4f
inc ecx
lea edx, [ebp - 0x28]
mov dword [ebp - 0x80], ecx
mov ecx, edi
call fcn.00411250
mov eax, dword [edi]
mov ecx, dword [eax + 4]
add ecx, edi
cmp dword [ecx + 0xc], 0
je 0x40f368
test byte [ecx + 0xc], 1
je 0x40fdf3
mov eax, dword [ecx + 0x30]
mov ecx, dword [eax + 4]
mov dword [ebp - 0xf8], ecx
mov eax, dword [ecx]
call dword [eax + 4]
lea eax, [ebp - 0xfc]
mov byte [ebp - 4], 0xb
push eax
lea edx, [ebp - 0x28]
lea ecx, [ebp - 0xa4]
call fcn.00415d60
mov esi, eax
add esp, 4
lea eax, [ebp - 0x28]
cmp eax, esi
je 0x40f406
mov ecx, dword [ebp - 0x14]
cmp ecx, 0x10
jb 0x40f3d2
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40f3c8
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x410065
push ecx
push edx
call fcn.0044fb2e
add esp, 8
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
movups xmm0, xmmword [esi]
movups xmmword [ebp - 0x28], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [ebp - 0x18], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0xf
mov byte [esi], 0
mov ecx, dword [ebp - 0x90]
cmp ecx, 0x10
jb 0x40f440
mov edx, dword [ebp - 0xa4]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40f436
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x410065
push ecx
push edx
call fcn.0044fb2e
add esp, 8
mov byte [ebp - 4], 7
mov ecx, dword [ebp - 0xf8]
mov dword [ebp - 0x94], 0
mov dword [ebp - 0x90], 0xf
mov byte [ebp - 0xa4], 0
test ecx, ecx
je 0x40f47e
mov eax, dword [ecx]
mov eax, dword [eax + 8]
call eax
test eax, eax
je 0x40f47e
mov ecx, dword [eax]
push 1
mov edx, dword [ecx]
mov ecx, eax
call edx
cmp dword [ebp - 0x18], 0
je 0x40fcee
cmp dword [ebp - 0x14], 0x10
lea eax, [ebp - 0x28]
mov ecx, dword [ebp - 0x28]
mov dl, byte [ebp - 0x76]
cmovae eax, ecx
setae byte [ebp - 0x75]
cmp byte [eax], dl
je 0x40fcee
cmp byte [ebp - 0x75], 0
lea eax, [ebp - 0x28]
mov dl, byte [ebp - 0x77]
cmovne eax, ecx
cmp byte [eax], dl
mov edx, dword [ebp - 0x18]
je 0x40fcee
cmp byte [ebp - 0x75], 0
lea eax, [ebp - 0x28]
cmovne eax, ecx
mov cl, byte [ebp - 0x78]
cmp byte [eax], cl
jne 0x40f85c
mov eax, dword [ebp - 0xa8]
test eax, eax
je 0x40f521
mov ecx, dword [eax + 0x18]
xor esi, esi
lea eax, [ecx + 9]
test eax, eax
cmove ecx, esi
cmp dword [ecx + 0xc], esi
jne 0x40f521
mov edx, dword [ebp - 0x2c]
mov ecx, 4
add edx, 9
lea eax, [edx - 5]
cmove eax, ecx
mov eax, dword [eax]
lea ecx, [eax + 0x40]
neg eax
sbb eax, eax
and eax, ecx
mov eax, dword [eax]
test eax, eax
je 0x40f514
add eax, 0xffffffc0
jmp 0x40f516
xor eax, eax
push eax
mov ecx, edx
call fcn.00413fe0
mov edx, dword [ebp - 0x18]
cmp dword [ebp - 0x14], 0x10
lea edi, [ebp - 0x28]
cmovae edi, dword [ebp - 0x28]
test edx, edx
je 0x40f549
movsx eax, byte [ebp - 0x79]
push edx
push eax
push edi
call fcn.004512d0
mov esi, eax
add esp, 0xc
test esi, esi
je 0x40f549
sub esi, edi
jmp 0x40f54c
or esi, 0xffffffff
cmp esi, 0xffffffff
je 0x40febc
mov edi, dword [ebp - 0xac]
mov eax, dword [edi]
mov eax, dword [eax + 4]
mov eax, dword [eax + edi + 0x30]
mov ecx, dword [eax + 4]
mov dword [ebp - 0x100], ecx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0xf
xorps xmm0, xmm0
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x94], 0
mov dword [ebp - 0x90], 0
movups xmmword [ebp - 0xa4], xmm0
cmp eax, 1
jb 0x40feb7
dec eax
lea ecx, [esi - 1]
cmp eax, ecx
cmovb ecx, eax
cmp dword [ebp - 0x14], 0x10
lea eax, [ebp - 0x28]
cmovae eax, dword [ebp - 0x28]
push ecx
inc eax
lea ecx, [ebp - 0xa4]
push eax
call fcn.00412470
lea eax, [ebp - 0x104]
mov byte [ebp - 4], 0x10
push eax
lea edx, [ebp - 0xa4]
lea ecx, [ebp - 0x5c]
call fcn.00415d60
add esp, 4
mov byte [ebp - 4], 0x12
mov ecx, dword [ebp - 0x90]
cmp ecx, 0x10
jb 0x40f61c
mov edx, dword [ebp - 0xa4]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40f612
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x410065
push ecx
push edx
call fcn.0044fb2e
add esp, 8
mov dword [ebp - 0x94], 0
mov dword [ebp - 0x90], 0xf
mov byte [ebp - 0xa4], 0
mov byte [ebp - 4], 0x13
mov ecx, dword [ebp - 0x100]
test ecx, ecx
je 0x40f65a
mov eax, dword [ecx]
mov eax, dword [eax + 8]
call eax
test eax, eax
je 0x40f65a
mov ecx, dword [eax]
push 1
mov edx, dword [ecx]
mov ecx, eax
call edx
mov esi, dword [ebp - 0x2c]
lea ecx, [ebp - 0x44]
add esi, 9
mov eax, 4
lea esi, [esi - 5]
cmove esi, eax
lea eax, [ebp - 0x5c]
push eax
lea eax, [ebp - 0x120]
push eax
mov esi, dword [esi]
call fcn.00414980
cmp dword [eax], esi
jne 0x40fe52
xorps xmm0, xmm0
mov dword [ebp - 0xb8], 0
movups xmmword [ebp - 0xc8], xmm0
mov dword [ebp - 0xb4], 0xf
mov byte [ebp - 0xc8], 0
push 0x10
mov byte [ebp - 4], 0x17
call fcn.0044fafe
add esp, 4
mov dword [ebp - 0x124], eax
mov ecx, eax
mov byte [ebp - 4], 0x18
call fcn.00413a60
mov dword [ebp - 0xb0], eax
lea eax, [ebp - 0x5c]
mov byte [ebp - 4], 0x19
push eax
lea ecx, [ebp - 0x1a0]
call fcn.0040ab20
lea eax, [ebp - 0x188]
mov byte [ebp - 4], 0x1a
mov dword [ebp - 0x8c], eax
lea ecx, [ebp - 0x188]
lea eax, [ebp - 0xc8]
push eax
call fcn.0040ab20
push 0x10
mov byte [ebp - 4], 0x1b
call fcn.0044fafe
mov esi, eax
mov dword [ebp - 0x128], esi
push 0x48
mov byte [ebp - 4], 0x1c
call fcn.0044fafe
add esp, 8
mov dword [esi + 4], eax
mov byte [ebp - 4], 0x1d
mov ecx, esi
push dword [ebp - 0xb0]
mov dword [esi + 0xc], 0
call fcn.0041c2f0
mov dword [ebp - 0x170], esi
lea eax, [ebp - 0x1a0]
mov byte [ebp - 4], 0x1e
push eax
lea ecx, [ebp - 0x208]
call fcn.00415ea0
lea eax, [ebp - 0x208]
mov byte [ebp - 4], 0x1f
push eax
lea eax, [ebp - 0x12c]
push eax
lea ecx, [ebp - 0x44]
call fcn.004148a0
lea ecx, [ebp - 0x1f0]
mov esi, dword [eax]
add esi, 0x18
mov byte [ebp - 4], 0x1e
mov dword [ebp - 0xa8], esi
call fcn.0040e480
mov ecx, dword [ebp - 0x1f4]
cmp ecx, 0x10
jb 0x40f7cd
mov edx, dword [ebp - 0x208]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40f7c3
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x410065
push ecx
push edx
call fcn.0044fb2e
add esp, 8
lea ecx, [ebp - 0x188]
mov dword [ebp - 0x1f8], 0
mov dword [ebp - 0x1f4], 0xf
mov byte [ebp - 0x208], 0
mov byte [ebp - 4], 0x19
call fcn.0040e480
mov ecx, dword [ebp - 0x18c]
cmp ecx, 0x10
jb 0x40f831
mov edx, dword [ebp - 0x1a0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40f827
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x410065
push ecx
push edx
call fcn.0044fb2e
add esp, 8
lea ecx, [ebp - 0xc8]
mov dword [ebp - 0x190], 0
mov dword [ebp - 0x18c], 0xf
mov byte [ebp - 0x1a0], 0
call fcn.0040e480
jmp 0x40fcb6
mov ecx, dword [ebp - 0xa8]
lea eax, [ebp - 0x44]
test ecx, ecx
lea edi, [ebp - 0x28]
cmovne eax, ecx
cmp byte [ebp - 0x75], 0
mov dword [ebp - 0x8c], eax
cmovne edi, dword [ebp - 0x28]
test edx, edx
je 0x40f895
push edx
push 0x3d
push edi
call fcn.004512d0
mov esi, eax
add esp, 0xc
test esi, esi
je 0x40f895
sub esi, edi
jmp 0x40f898
or esi, 0xffffffff
cmp esi, 0xffffffff
je 0x40fffa
test esi, esi
je 0x40ff8f
mov edi, dword [ebp - 0xac]
mov eax, dword [edi]
mov eax, dword [eax + 4]
mov eax, dword [eax + edi + 0x30]
mov ecx, dword [eax + 4]
mov dword [ebp - 0x108], ecx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x26
lea eax, [ebp - 0x28]
cmp dword [ebp - 0x18], esi
mov ecx, esi
xorps xmm0, xmm0
mov dword [ebp - 0x94], 0
cmovb ecx, dword [ebp - 0x18]
cmp dword [ebp - 0x14], 0x10
push ecx
cmovae eax, dword [ebp - 0x28]
lea ecx, [ebp - 0xa4]
push eax
movups xmmword [ebp - 0xa4], xmm0
mov dword [ebp - 0x90], 0
call fcn.00412470
lea eax, [ebp - 0x10c]
mov byte [ebp - 4], 0x27
push eax
lea edx, [ebp - 0xa4]
lea ecx, [ebp - 0x5c]
call fcn.00415d60
add esp, 4
mov byte [ebp - 4], 0x29
mov ecx, dword [ebp - 0x90]
cmp ecx, 0x10
jb 0x40f963
mov edx, dword [ebp - 0xa4]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40f959
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x410065
push ecx
push edx
call fcn.0044fb2e
add esp, 8
mov dword [ebp - 0x94], 0
mov dword [ebp - 0x90], 0xf
mov byte [ebp - 0xa4], 0
mov ecx, dword [ebp - 0x108]
test ecx, ecx
je 0x40f99d
mov eax, dword [ecx]
mov eax, dword [eax + 8]
call eax
test eax, eax
je 0x40f99d
mov ecx, dword [eax]
push 1
mov edx, dword [ecx]
mov ecx, eax
call edx
mov eax, dword [edi]
mov eax, dword [eax + 4]
mov eax, dword [eax + edi + 0x30]
mov ecx, dword [eax + 4]
mov dword [ebp - 0xcc], ecx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x2b
inc esi
mov eax, dword [ebp - 0x18]
xorps xmm0, xmm0
mov dword [ebp - 0x94], 0
mov dword [ebp - 0x90], 0
movups xmmword [ebp - 0xa4], xmm0
cmp eax, esi
jb 0x40feb7
sub eax, esi
or ecx, 0xffffffff
cmp eax, 0xffffffff
cmovb ecx, eax
cmp dword [ebp - 0x14], 0x10
lea eax, [ebp - 0x28]
cmovae eax, dword [ebp - 0x28]
push ecx
add eax, esi
lea ecx, [ebp - 0xa4]
push eax
call fcn.00412470
lea eax, [ebp - 0xd0]
mov byte [ebp - 4], 0x2c
push eax
lea edx, [ebp - 0xa4]
lea ecx, [ebp - 0x74]
call fcn.00415d60
add esp, 4
mov byte [ebp - 4], 0x2e
mov ecx, dword [ebp - 0x90]
cmp ecx, 0x10
jb 0x40fa61
mov edx, dword [ebp - 0xa4]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40fa57
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x410065
push ecx
push edx
call fcn.0044fb2e
add esp, 8
mov dword [ebp - 0x94], 0
mov dword [ebp - 0x90], 0xf
mov byte [ebp - 0xa4], 0
mov byte [ebp - 4], 0x2f
mov ecx, dword [ebp - 0xcc]
test ecx, ecx
je 0x40fa9f
mov eax, dword [ecx]
mov eax, dword [eax + 8]
call eax
test eax, eax
je 0x40fa9f
mov ecx, dword [eax]
push 1
mov edx, dword [ecx]
mov ecx, eax
call edx
mov ecx, dword [ebp - 0x8c]
xor edx, edx
mov esi, dword [ecx + 0x18]
lea eax, [esi + 9]
test eax, eax
lea eax, [ebp - 0x5c]
push eax
cmove esi, edx
lea eax, [ebp - 0x110]
push eax
mov esi, dword [esi + 4]
call fcn.00414980
cmp dword [eax], esi
jne 0x40ff21
lea eax, [ebp - 0x74]
push eax
lea ecx, [ebp - 0xc8]
call fcn.0040ab20
push 0x10
mov byte [ebp - 4], 0x33
call fcn.0044fafe
add esp, 4
mov dword [ebp - 0x114], eax
mov ecx, eax
mov byte [ebp - 4], 0x34
call fcn.00413a60
mov dword [ebp - 0xb0], eax
lea eax, [ebp - 0x5c]
mov byte [ebp - 4], 0x35
push eax
lea ecx, [ebp - 0x1d4]
call fcn.0040ab20
lea eax, [ebp - 0x1bc]
mov byte [ebp - 4], 0x36
mov dword [ebp - 0x118], eax
lea ecx, [ebp - 0x1bc]
lea eax, [ebp - 0xc8]
push eax
call fcn.0040ab20
push 0x10
mov byte [ebp - 4], 0x37
call fcn.0044fafe
mov esi, eax
mov dword [ebp - 0x11c], esi
push 0x48
mov byte [ebp - 4], 0x38
call fcn.0044fafe
add esp, 8
mov dword [esi + 4], eax
mov byte [ebp - 4], 0x39
mov ecx, esi
push dword [ebp - 0xb0]
mov dword [esi + 0xc], 0
call fcn.0041c2f0
mov dword [ebp - 0x1a4], esi
lea eax, [ebp - 0x1d4]
mov byte [ebp - 4], 0x3a
push eax
lea ecx, [ebp - 0x160]
call fcn.00415ea0
lea eax, [ebp - 0x160]
mov byte [ebp - 4], 0x3b
mov ecx, dword [ebp - 0x8c]
push eax
lea eax, [ebp - 0x84]
push eax
call fcn.004148a0
lea ecx, [ebp - 0x148]
mov byte [ebp - 4], 0x3a
call fcn.0040e480
mov ecx, dword [ebp - 0x14c]
cmp ecx, 0x10
jb 0x40fbf4
mov edx, dword [ebp - 0x160]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40fbea
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x410065
push ecx
push edx
call fcn.0044fb2e
add esp, 8
lea ecx, [ebp - 0x1bc]
mov dword [ebp - 0x150], 0
mov dword [ebp - 0x14c], 0xf
mov byte [ebp - 0x160], 0
mov byte [ebp - 4], 0x35
call fcn.0040e480
mov ecx, dword [ebp - 0x1c0]
cmp ecx, 0x10
jb 0x40fc58
mov edx, dword [ebp - 0x1d4]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40fc4e
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x410065
push ecx
push edx
call fcn.0044fb2e
add esp, 8
lea ecx, [ebp - 0xc8]
mov dword [ebp - 0x1c4], 0
mov dword [ebp - 0x1c0], 0xf
mov byte [ebp - 0x1d4], 0
call fcn.0040e480
mov byte [ebp - 4], 0x2a
mov ecx, dword [ebp - 0x60]
cmp ecx, 0x10
jb 0x40fcb6
mov edx, dword [ebp - 0x74]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40fcac
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x410065
push ecx
push edx
call fcn.0044fb2e
add esp, 8
mov byte [ebp - 4], 7
mov ecx, dword [ebp - 0x48]
cmp ecx, 0x10
jb 0x40fcee
mov edx, dword [ebp - 0x5c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40fce4
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x410065
push ecx
push edx
call fcn.0044fb2e
add esp, 8
mov eax, dword [edi]
mov eax, dword [eax + 4]
cmp dword [eax + edi + 0xc], 0
jne 0x40fd02
mov ecx, dword [ebp - 0x80]
jmp 0x40f343
mov esi, dword [ebp - 0xa8]
test esi, esi
je 0x40fd4f
mov ecx, dword [esi + 0x18]
xor edx, edx
lea eax, [ecx + 9]
test eax, eax
cmove ecx, edx
cmp dword [ecx + 0xc], edx
jne 0x40fd4f
mov edx, dword [ebp - 0x2c]
mov ecx, 4
add edx, 9
lea eax, [edx - 5]
cmove eax, ecx
mov eax, dword [eax]
lea ecx, [eax + 0x40]
neg eax
sbb eax, eax
and eax, ecx
mov eax, dword [eax]
test eax, eax
je 0x40fd45
add eax, 0xffffffc0
jmp 0x40fd47
xor eax, eax
push eax
mov ecx, edx
call fcn.00413fe0
mov edx, dword [ebp - 0xdc]
lea eax, [ebp - 0x44]
cmp edx, eax
je 0x40fd7e
movups xmm0, xmmword [ebp - 0x44]
movups xmm1, xmmword [edx]
movq xmm2, qword [edx + 0x10]
movups xmmword [edx], xmm0
movq xmm0, qword [ebp - 0x34]
movq qword [edx + 0x10], xmm0
movups xmmword [ebp - 0x44], xmm1
movq qword [ebp - 0x34], xmm2
mov ecx, dword [edx + 0x18]
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x2c], ecx
mov ecx, dword [ebp - 0x14]
mov dword [edx + 0x18], eax
cmp ecx, 0x10
jb 0x40fdbe
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40fdb4
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x410065
push ecx
push edx
call fcn.0044fb2e
add esp, 8
lea ecx, [ebp - 0x44]
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
call fcn.0040e480
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0044fadf
mov esp, ebp
pop ebp
ret
push ecx
push str.void___cdecl_boost::property_tree::ini_parser::read_ini_class_boost::property_tree::basic_ptree_class_std::basic_string_char_struct_std::char_traits_char__class_std::allocator_char____class_std::basic_string_char_struct_std::char_traits_char__class_std::allocator_char____struct_std::less_class_std::basic_string_char_struct_std::char_traits_char__class_std::allocator_char_________class_std::basic_istream_char_struct_std::char_traits_char_____class_boost::property_tree::basic_ptree_class_std::basic_string_char_struct_std::char_traits_char__class_std::allocator_char____class_std::basic_string_char_struct_std::char_traits_char__class_std::allocator_char____struct_std::less_class_std::basic_string_char_struct_std::char_traits_char__class_std::allocator_char_________
push 0x5a
push str.C:RepoThirdParty_boostinclude_boost_1_73_boostproperty_treeini_parser.hpp
lea ecx, [ebp - 0xd8]
call fcn.00403620
push 0x48e113
lea ecx, [ebp - 0x74]
mov esi, eax
call fcn.0040aae0
push str.read_error
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 8
call fcn.0040aae0
push dword [ebp - 0x80]
lea eax, [ebp - 0x74]
mov byte [ebp - 4], 9
push eax
lea eax, [ebp - 0x5c]
push eax
lea ecx, [ebp - 0x16c]
call fcn.00403d70
mov edx, esi
mov byte [ebp - 4], 0xa
mov ecx, eax
call fcn.00415d30
push ecx
push str.void___cdecl_boost::property_tree::ini_parser::read_ini_class_boost::property_tree::basic_ptree_class_std::basic_string_char_struct_std::char_traits_char__class_std::allocator_char____class_std::basic_string_char_struct_std::char_traits_char__class_std::allocator_char____struct_std::less_class_std::basic_string_char_struct_std::char_traits_char__class_std::allocator_char_________class_std::basic_istream_char_struct_std::char_traits_char_____class_boost::property_tree::basic_ptree_class_std::basic_string_char_struct_std::char_traits_char__class_std::allocator_char____class_std::basic_string_char_struct_std::char_traits_char__class_std::allocator_char____struct_std::less_class_std::basic_string_char_struct_std::char_traits_char__class_std::allocator_char_________
push 0x72
push str.C:RepoThirdParty_boostinclude_boost_1_73_boostproperty_treeini_parser.hpp
lea ecx, [ebp - 0xd8]
call fcn.00403620
push 0x48e113
lea ecx, [ebp - 0x74]
mov esi, eax
call fcn.0040aae0
push str.duplicate_section_name
lea ecx, [ebp - 0xf4]
mov byte [ebp - 4], 0x14
call fcn.0040aae0
push dword [ebp - 0x80]
lea eax, [ebp - 0x74]
mov byte [ebp - 4], 0x15
push eax
lea eax, [ebp - 0xf4]
push eax
lea ecx, [ebp - 0x16c]
call fcn.00403d70
mov edx, esi
mov byte [ebp - 4], 0x16
mov ecx, eax
call fcn.00415d30
call fcn.0040dc80
push ecx
push str.void___cdecl_boost::property_tree::ini_parser::read_ini_class_boost::property_tree::basic_ptree_class_std::basic_string_char_struct_std::char_traits_char__class_std::allocator_char____class_std::basic_string_char_struct_std::char_traits_char__class_std::allocator_char____struct_std::less_class_std::basic_string_char_struct_std::char_traits_char__class_std::allocator_char_________class_std::basic_istream_char_struct_std::char_traits_char_____class_boost::property_tree::basic_ptree_class_std::basic_string_char_struct_std::char_traits_char__class_std::allocator_char____class_std::basic_string_char_struct_std::char_traits_char__class_std::allocator_char____struct_std::less_class_std::basic_string_char_struct_std::char_traits_char__class_std::allocator_char_________
push 0x6d
push str.C:RepoThirdParty_boostinclude_boost_1_73_boostproperty_treeini_parser.hpp
lea ecx, [ebp - 0xd8]
call fcn.00403620
push 0x48e113
lea ecx, [ebp - 0xf4]
mov esi, eax
call fcn.0040aae0
push str.unmatched__
lea ecx, [ebp - 0x74]
mov byte [ebp - 4], 0xc
call fcn.0040aae0
push dword [ebp - 0x80]
lea eax, [ebp - 0xf4]
mov byte [ebp - 4], 0xd
push eax
lea eax, [ebp - 0x74]
push eax
lea ecx, [ebp - 0x16c]
call fcn.00403d70
mov edx, esi
mov byte [ebp - 4], 0xe
mov ecx, eax
call fcn.00415d30
push ecx
push str.void___cdecl_boost::property_tree::ini_parser::read_ini_class_boost::property_tree::basic_ptree_class_std::basic_string_char_struct_std::char_traits_char__class_std::allocator_char____class_std::basic_string_char_struct_std::char_traits_char__class_std::allocator_char____struct_std::less_class_std::basic_string_char_struct_std::char_traits_char__class_std::allocator_char_________class_std::basic_istream_char_struct_std::char_traits_char_____class_boost::property_tree::basic_ptree_class_std::basic_string_char_struct_std::char_traits_char__class_std::allocator_char____class_std::basic_string_char_struct_std::char_traits_char__class_std::allocator_char____struct_std::less_class_std::basic_string_char_struct_std::char_traits_char__class_std::allocator_char_________
push 0x86
push str.C:RepoThirdParty_boostinclude_boost_1_73_boostproperty_treeini_parser.hpp
lea ecx, [ebp - 0xd8]
call fcn.00403620
push 0x48e113
lea ecx, [ebp - 0xf4]
mov esi, eax
call fcn.0040aae0
push str.duplicate_key_name
lea ecx, [ebp - 0xc4]
mov byte [ebp - 4], 0x30
call fcn.0040aae0
push dword [ebp - 0x80]
lea eax, [ebp - 0xf4]
mov byte [ebp - 4], 0x31
push eax
lea eax, [ebp - 0xc4]
push eax
lea ecx, [ebp - 0x16c]
call fcn.00403d70
mov edx, esi
mov byte [ebp - 4], 0x32
mov ecx, eax
call fcn.00415d30
push ecx
push str.void___cdecl_boost::property_tree::ini_parser::read_ini_class_boost::property_tree::basic_ptree_class_std::basic_string_char_struct_std::char_traits_char__class_std::allocator_char____class_std::basic_string_char_struct_std::char_traits_char__class_std::allocator_char____struct_std::less_class_std::basic_string_char_struct_std::char_traits_char__class_std::allocator_char_________class_std::basic_istream_char_struct_std::char_traits_char_____class_boost::property_tree::basic_ptree_class_std::basic_string_char_struct_std::char_traits_char__class_std::allocator_char____class_std::basic_string_char_struct_std::char_traits_char__class_std::allocator_char____struct_std::less_class_std::basic_string_char_struct_std::char_traits_char__class_std::allocator_char_________
push 0x7f
push str.C:RepoThirdParty_boostinclude_boost_1_73_boostproperty_treeini_parser.hpp
lea ecx, [ebp - 0xd8]
call fcn.00403620
push 0x48e113
lea ecx, [ebp - 0xc4]
mov esi, eax
call fcn.0040aae0
push str.key_expected
lea ecx, [ebp - 0xf4]
mov byte [ebp - 4], 0x23
call fcn.0040aae0
push dword [ebp - 0x80]
lea eax, [ebp - 0xc4]
mov byte [ebp - 4], 0x24
push eax
lea eax, [ebp - 0xf4]
push eax
lea ecx, [ebp - 0x16c]
call fcn.00403d70
mov edx, esi
mov byte [ebp - 4], 0x25
mov ecx, eax
call fcn.00415d30
push ecx
push str.void___cdecl_boost::property_tree::ini_parser::read_ini_class_boost::property_tree::basic_ptree_class_std::basic_string_char_struct_std::char_traits_char__class_std::allocator_char____class_std::basic_string_char_struct_std::char_traits_char__class_std::allocator_char____struct_std::less_class_std::basic_string_char_struct_std::char_traits_char__class_std::allocator_char_________class_std::basic_istream_char_struct_std::char_traits_char_____class_boost::property_tree::basic_ptree_class_std::basic_string_char_struct_std::char_traits_char__class_std::allocator_char____class_std::basic_string_char_struct_std::char_traits_char__class_std::allocator_char____struct_std::less_class_std::basic_string_char_struct_std::char_traits_char__class_std::allocator_char_________
push 0x7c
push str.C:RepoThirdParty_boostinclude_boost_1_73_boostproperty_treeini_parser.hpp
lea ecx, [ebp - 0xd8]
call fcn.00403620
push 0x48e113
lea ecx, [ebp - 0xc4]
mov esi, eax
call fcn.0040aae0
push str._character_not_found_in_line
lea ecx, [ebp - 0xf4]
mov byte [ebp - 4], 0x20
call fcn.0040aae0
push dword [ebp - 0x80]
lea eax, [ebp - 0xc4]
mov byte [ebp - 4], 0x21
push eax
lea eax, [ebp - 0xf4]
push eax
lea ecx, [ebp - 0x16c]
call fcn.00403d70
mov edx, esi
mov byte [ebp - 4], 0x22
mov ecx, eax
call fcn.00415d30
call fcn.0046254f
int3