Function at 0x413e80
Capabilities:
Contain obfuscated stackstrings
Parse pe header

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x558598
mov eax, dword fs:[0]
push eax
sub esp, 0x7c
push ebx
push esi
push edi
mov eax, dword [0x5c1f64]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x24], ecx
push 0x598964
lea ecx, [ebp - 0x14]
mov dword [ebp - 4], 8
call fcn.004098d0
push 0x598964
lea ecx, [ebp - 0x20]
mov byte [ebp - 4], 9
call fcn.004098d0
push 0x598964
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 0xa
call fcn.004098d0
push 0x598964
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0xb
call fcn.004098d0
push 0x598964
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 0xc
call fcn.004098d0
push 0x5cc484
lea eax, [ebp + 0x20]
mov byte [ebp - 4], 0xd
mov esi, dword [sym.imp.KERNEL32.dll_CompareFileTime]
push eax
call esi
mov dword [ebp - 0x88], eax
lea eax, [ebp + 0x28]
push 0x5cc484
push eax
call esi
push dword [ebp + 0x1c]
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x30], eax
push dword [ebp + 0x18]
call fcn.0040feb0
add esp, 8
mov byte [ebp - 4], 0xe
or esi, 0xffffffff
mov ecx, dword [eax]
mov edi, dword [ebp - 0x14]
add edi, 0xfffffff0
lea edx, [ecx - 0x10]
cmp edx, edi
je 0x413f98
cmp dword [edi + 0xc], 0
lea ebx, [edi + 0xc]
jl 0x413f8c
mov eax, dword [edx]
cmp eax, dword [edi]
jne 0x413f8c
push edx
call fcn.00409cb0
add esp, 4
mov dword [ebp - 0x28], eax
mov ecx, esi
lock xadd dword [ebx], ecx
dec ecx
test ecx, ecx
jg 0x413f84
mov ecx, dword [edi]
push edi
mov edx, dword [ecx]
call dword [edx + 4]
mov eax, dword [ebp - 0x28]
add eax, 0x10
mov dword [ebp - 0x14], eax
jmp 0x413f98
push dword [ecx - 0xc]
push ecx
lea ecx, [ebp - 0x14]
call fcn.00409d90
mov byte [ebp - 4], 0xd
mov eax, esi
mov edx, dword [ebp - 0x2c]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x413fb6
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push dword [ebp + 0x24]
lea ecx, [ebp - 0x28]
push dword [ebp + 0x20]
call fcn.0040feb0
add esp, 8
mov byte [ebp - 4], 0xf
mov ecx, dword [eax]
mov edi, dword [ebp - 0x20]
add edi, 0xfffffff0
lea edx, [ecx - 0x10]
cmp edx, edi
je 0x41401f
cmp dword [edi + 0xc], 0
lea ebx, [edi + 0xc]
jl 0x414013
mov eax, dword [edx]
cmp eax, dword [edi]
jne 0x414013
push edx
call fcn.00409cb0
add esp, 4
mov dword [ebp - 0x2c], eax
mov ecx, esi
lock xadd dword [ebx], ecx
dec ecx
test ecx, ecx
jg 0x41400b
mov ecx, dword [edi]
push edi
mov edx, dword [ecx]
call dword [edx + 4]
mov eax, dword [ebp - 0x2c]
add eax, 0x10
mov dword [ebp - 0x20], eax
jmp 0x41401f
push dword [ecx - 0xc]
push ecx
lea ecx, [ebp - 0x20]
call fcn.00409d90
mov byte [ebp - 4], 0xd
mov eax, esi
mov edx, dword [ebp - 0x28]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x41403d
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x24]
lea ecx, [ebp - 0x28]
call fcn.0040fe70
mov byte [ebp - 4], 0x10
mov ecx, dword [eax]
mov edi, dword [ebp - 0x10]
add edi, 0xfffffff0
lea edx, [ecx - 0x10]
cmp edx, edi
je 0x4140a0
cmp dword [edi + 0xc], 0
lea ebx, [edi + 0xc]
jl 0x414094
mov eax, dword [edx]
cmp eax, dword [edi]
jne 0x414094
push edx
call fcn.00409cb0
add esp, 4
mov dword [ebp - 0x2c], eax
mov ecx, esi
lock xadd dword [ebx], ecx
dec ecx
test ecx, ecx
jg 0x41408c
mov ecx, dword [edi]
push edi
mov edx, dword [ecx]
call dword [edx + 4]
mov eax, dword [ebp - 0x2c]
add eax, 0x10
mov dword [ebp - 0x10], eax
jmp 0x4140a0
push dword [ecx - 0xc]
push ecx
lea ecx, [ebp - 0x10]
call fcn.00409d90
mov byte [ebp - 4], 0xd
mov eax, esi
mov edx, dword [ebp - 0x28]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4140be
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push dword [ebp + 0x2c]
lea ecx, [ebp - 0x28]
push dword [ebp + 0x28]
call fcn.0040feb0
add esp, 8
mov byte [ebp - 4], 0x11
mov ecx, dword [eax]
mov edi, dword [ebp - 0x1c]
add edi, 0xfffffff0
lea edx, [ecx - 0x10]
cmp edx, edi
je 0x414127
cmp dword [edi + 0xc], 0
lea ebx, [edi + 0xc]
jl 0x41411b
mov eax, dword [edx]
cmp eax, dword [edi]
jne 0x41411b
push edx
call fcn.00409cb0
add esp, 4
mov dword [ebp - 0x2c], eax
mov ecx, esi
lock xadd dword [ebx], ecx
dec ecx
test ecx, ecx
jg 0x414113
mov ecx, dword [edi]
push edi
mov edx, dword [ecx]
call dword [edx + 4]
mov eax, dword [ebp - 0x2c]
add eax, 0x10
mov dword [ebp - 0x1c], eax
jmp 0x414127
push dword [ecx - 0xc]
push ecx
lea ecx, [ebp - 0x1c]
call fcn.00409d90
mov byte [ebp - 4], 0xd
mov eax, esi
mov edx, dword [ebp - 0x28]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x414145
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp + 0xc]
call fcn.0041ad60
lea ecx, [ebp + 0x10]
call fcn.0041ad60
lea ecx, [ebp + 0x14]
call fcn.0041ad60
cmp dword [ebp - 0x24], 0
je 0x414a79
cmp dword [ebp - 0x30], 0xffffffff
jne 0x41417c
push 4
push str.True
lea ecx, [ebp - 0x18]
call fcn.00409d90
cmp dword [0x5cc480], 0
lea ecx, [ebp - 0x24]
push 0x5a06b8
je 0x414669
call fcn.00409830
push 0x5a3544
lea eax, [ebp + 0xc]
mov byte [ebp - 4], 0x12
push eax
lea eax, [ebp - 0x88]
push eax
call fcn.0040b2f0
lea ecx, [ebp + 0x10]
mov byte [ebp - 4], 0x13
push ecx
push eax
lea eax, [ebp - 0x84]
push eax
call fcn.00409100
push 0x5a3544
push eax
lea eax, [ebp - 0x80]
mov byte [ebp - 4], 0x14
push eax
call fcn.0040b2f0
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 0x15
push ecx
push eax
lea eax, [ebp - 0x7c]
push eax
call fcn.00409100
push 0x5a3544
push eax
lea eax, [ebp - 0x78]
mov byte [ebp - 4], 0x16
push eax
call fcn.0040b2f0
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 0x17
push ecx
push eax
lea eax, [ebp - 0x74]
push eax
call fcn.00409100
add esp, 0x48
push 0x5a3544
push eax
lea eax, [ebp - 0x70]
mov byte [ebp - 4], 0x18
push eax
call fcn.0040b2f0
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0x19
push ecx
push eax
lea eax, [ebp - 0x6c]
push eax
call fcn.00409100
push 0x5a3544
push eax
lea eax, [ebp - 0x68]
mov byte [ebp - 4], 0x1a
push eax
call fcn.0040b2f0
lea ecx, [ebp + 0x14]
mov byte [ebp - 4], 0x1b
push ecx
push eax
lea eax, [ebp - 0x64]
push eax
call fcn.00409100
mov byte [ebp - 4], 0x1c
push 0x5a3544
push eax
lea eax, [ebp - 0x60]
push eax
call fcn.0040b2f0
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 0x1d
push ecx
push eax
lea eax, [ebp - 0x5c]
push eax
call fcn.00409100
add esp, 0x48
push 0x5a3544
push eax
lea eax, [ebp - 0x58]
mov byte [ebp - 4], 0x1e
push eax
call fcn.0040b2f0
lea ecx, [ebp + 8]
mov byte [ebp - 4], 0x1f
push ecx
push eax
lea eax, [ebp - 0x54]
push eax
call fcn.00409100
push 0x5a3544
push eax
lea eax, [ebp - 0x50]
mov byte [ebp - 4], 0x20
push eax
call fcn.0040b2f0
lea ecx, [ebp + 0x30]
mov byte [ebp - 4], 0x21
push ecx
push eax
lea eax, [ebp - 0x4c]
push eax
call fcn.00409100
push 0x5a3544
push eax
lea eax, [ebp - 0x48]
mov byte [ebp - 4], 0x22
push eax
call fcn.0040b2f0
lea ecx, [ebp + 0x34]
mov byte [ebp - 4], 0x23
push ecx
push eax
lea eax, [ebp - 0x44]
push eax
call fcn.00409100
add esp, 0x48
push 0x5a3544
push eax
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 0x24
push eax
call fcn.0040b2f0
lea ecx, [ebp + 0x38]
mov byte [ebp - 4], 0x25
push ecx
push eax
lea eax, [ebp - 0x3c]
push eax
call fcn.00409100
push 0x5a3544
push eax
lea eax, [ebp - 0x38]
mov byte [ebp - 4], 0x26
push eax
call fcn.0040b2f0
lea ecx, [ebp + 0x3c]
mov byte [ebp - 4], 0x27
push ecx
push eax
lea eax, [ebp - 0x34]
push eax
call fcn.00409100
push 0x5a3544
push eax
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 0x28
push eax
call fcn.0040b2f0
lea ecx, [ebp + 0x40]
mov byte [ebp - 4], 0x29
push ecx
push eax
lea eax, [ebp - 0x2c]
push eax
call fcn.00409100
add esp, 0x48
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 0x2a
push ecx
push eax
lea eax, [ebp - 0x30]
push eax
call fcn.00409100
add esp, 0xc
mov byte [ebp - 4], 0x2b
mov ecx, dword [eax]
call fcn.0040c9b0
mov byte [ebp - 4], 0x2a
mov eax, esi
mov edx, dword [ebp - 0x30]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4143a5
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x29
mov eax, esi
mov edx, dword [ebp - 0x2c]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4143c3
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x28
mov eax, esi
mov edx, dword [ebp - 0x28]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4143e1
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x27
mov eax, esi
mov edx, dword [ebp - 0x34]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4143ff
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x26
mov eax, esi
mov edx, dword [ebp - 0x38]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x41441d
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x25
mov eax, esi
mov edx, dword [ebp - 0x3c]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x41443b
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x24
mov eax, esi
mov edx, dword [ebp - 0x40]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x414459
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x23
mov eax, esi
mov edx, dword [ebp - 0x44]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x414477
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x22
mov eax, esi
mov edx, dword [ebp - 0x48]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x414495
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x21
mov eax, esi
mov edx, dword [ebp - 0x4c]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4144b3
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x20
mov eax, esi
mov edx, dword [ebp - 0x50]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4144d1
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x1f
mov eax, esi
mov edx, dword [ebp - 0x54]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4144ef
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x1e
mov eax, esi
mov edx, dword [ebp - 0x58]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x41450d
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x1d
mov eax, esi
mov edx, dword [ebp - 0x5c]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x41452b
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x1c
mov eax, esi
mov edx, dword [ebp - 0x60]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x414549
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x1b
mov eax, esi
mov edx, dword [ebp - 0x64]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x414567
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x1a
mov eax, esi
mov edx, dword [ebp - 0x68]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x414585
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x19
mov eax, esi
mov edx, dword [ebp - 0x6c]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4145a3
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x18
mov eax, esi
mov edx, dword [ebp - 0x70]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4145c1
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x17
mov eax, esi
mov edx, dword [ebp - 0x74]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4145df
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x16
mov eax, esi
mov edx, dword [ebp - 0x78]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4145fd
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x15
mov eax, esi
mov edx, dword [ebp - 0x7c]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x41461b
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x14
mov eax, esi
mov edx, dword [ebp - 0x80]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x414639
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x13
mov eax, esi
mov edx, dword [ebp - 0x84]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x41465a
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x12
mov edx, dword [ebp - 0x88]
jmp 0x41538c
call fcn.00409830
push 0x5a3544
lea eax, [ebp + 0xc]
mov byte [ebp - 4], 0x2c
push eax
lea eax, [ebp - 0x38]
push eax
call fcn.0040b2f0
lea ecx, [ebp + 0x10]
mov byte [ebp - 4], 0x2d
push ecx
push eax
lea eax, [ebp - 0x3c]
push eax
call fcn.00409100
push 0x5a3544
push eax
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 0x2e
push eax
call fcn.0040b2f0
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 0x2f
push ecx
push eax
lea eax, [ebp - 0x44]
push eax
call fcn.00409100
push 0x5a3544
push eax
lea eax, [ebp - 0x48]
mov byte [ebp - 4], 0x30
push eax
call fcn.0040b2f0
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 0x31
push ecx
push eax
lea eax, [ebp - 0x4c]
push eax
call fcn.00409100
add esp, 0x48
push 0x5a3544
push eax
lea eax, [ebp - 0x50]
mov byte [ebp - 4], 0x32
push eax
call fcn.0040b2f0
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0x33
push ecx
push eax
lea eax, [ebp - 0x54]
push eax
call fcn.00409100
push 0x5a3544
push eax
lea eax, [ebp - 0x58]
mov byte [ebp - 4], 0x34
push eax
call fcn.0040b2f0
lea ecx, [ebp + 0x14]
mov byte [ebp - 4], 0x35
push ecx
push eax
lea eax, [ebp - 0x5c]
push eax
call fcn.00409100
mov byte [ebp - 4], 0x36
push 0x5a3544
push eax
lea eax, [ebp - 0x60]
push eax
call fcn.0040b2f0
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 0x37
push ecx
push eax
lea eax, [ebp - 0x64]
push eax
call fcn.00409100
add esp, 0x48
push 0x5a3544
push eax
lea eax, [ebp - 0x68]
mov byte [ebp - 4], 0x38
push eax
call fcn.0040b2f0
lea ecx, [ebp + 8]
mov byte [ebp - 4], 0x39
push ecx
push eax
lea eax, [ebp - 0x6c]
push eax
call fcn.00409100
push 0x5a3544
push eax
lea eax, [ebp - 0x70]
mov byte [ebp - 4], 0x3a
push eax
call fcn.0040b2f0
lea ecx, [ebp + 0x30]
mov byte [ebp - 4], 0x3b
push ecx
push eax
lea eax, [ebp - 0x74]
push eax
call fcn.00409100
push 0x5a3544
push eax
lea eax, [ebp - 0x78]
mov byte [ebp - 4], 0x3c
push eax
call fcn.0040b2f0
lea ecx, [ebp + 0x34]
mov byte [ebp - 4], 0x3d
push ecx
push eax
lea eax, [ebp - 0x7c]
push eax
call fcn.00409100
add esp, 0x48
push 0x5a3544
push eax
lea eax, [ebp - 0x80]
mov byte [ebp - 4], 0x3e
push eax
call fcn.0040b2f0
lea ecx, [ebp + 0x38]
mov byte [ebp - 4], 0x3f
push ecx
push eax
lea eax, [ebp - 0x84]
push eax
call fcn.00409100
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 0x40
push ecx
push eax
lea eax, [ebp - 0x88]
push eax
call fcn.00409100
add esp, 0x24
mov byte [ebp - 4], 0x41
mov ecx, dword [eax]
call fcn.0040c9b0
mov byte [ebp - 4], 0x40
mov eax, esi
mov edx, dword [ebp - 0x88]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x414833
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x3f
mov eax, esi
mov edx, dword [ebp - 0x84]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x414854
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x3e
mov eax, esi
mov edx, dword [ebp - 0x80]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x414872
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x3d
mov eax, esi
mov edx, dword [ebp - 0x7c]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x414890
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x3c
mov eax, esi
mov edx, dword [ebp - 0x78]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4148ae
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x3b
mov eax, esi
mov edx, dword [ebp - 0x74]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4148cc
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x3a
mov eax, esi
mov edx, dword [ebp - 0x70]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4148ea
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x39
mov eax, esi
mov edx, dword [ebp - 0x6c]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x414908
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x38
mov eax, esi
mov edx, dword [ebp - 0x68]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x414926
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x37
mov eax, esi
mov edx, dword [ebp - 0x64]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x414944
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x36
mov eax, esi
mov edx, dword [ebp - 0x60]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x414962
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x35
mov eax, esi
mov edx, dword [ebp - 0x5c]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x414980
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x34
mov eax, esi
mov edx, dword [ebp - 0x58]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x41499e
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x33
mov eax, esi
mov edx, dword [ebp - 0x54]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4149bc
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x32
mov eax, esi
mov edx, dword [ebp - 0x50]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4149da
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x31
mov eax, esi
mov edx, dword [ebp - 0x4c]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4149f8
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x30
mov eax, esi
mov edx, dword [ebp - 0x48]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x414a16
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x2f
mov eax, esi
mov edx, dword [ebp - 0x44]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x414a34
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x2e
mov eax, esi
mov edx, dword [ebp - 0x40]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x414a52
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x2d
mov eax, esi
mov edx, dword [ebp - 0x3c]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x414a70
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x2c
jmp 0x415389
cmp dword [ebp - 0x88], 0xffffffff
jne 0x414a91
push 4
push str.True
lea ecx, [ebp - 0x18]
call fcn.00409d90
cmp dword [0x5cc480], 0
lea ecx, [ebp - 0x24]
push 0x5a06b8
je 0x414f7e
call fcn.00409830
push 0x5a3544
lea eax, [ebp + 0xc]
mov byte [ebp - 4], 0x42
push eax
lea eax, [ebp - 0x28]
push eax
call fcn.0040b2f0
lea ecx, [ebp + 0x10]
mov byte [ebp - 4], 0x43
push ecx
push eax
lea eax, [ebp - 0x2c]
push eax
call fcn.00409100
push 0x5a3544
push eax
lea eax, [ebp - 0x30]
mov byte [ebp - 4], 0x44
push eax
call fcn.0040b2f0
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 0x45
push ecx
push eax
lea eax, [ebp - 0x34]
push eax
call fcn.00409100
push 0x5a3544
push eax
lea eax, [ebp - 0x38]
mov byte [ebp - 4], 0x46
push eax
call fcn.0040b2f0
lea ecx, [ebp - 0x20]
mov byte [ebp - 4], 0x47
push ecx
push eax
lea eax, [ebp - 0x3c]
push eax
call fcn.00409100
add esp, 0x48
push 0x5a3544
push eax
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 0x48
push eax
call fcn.0040b2f0
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0x49
push ecx
push eax
lea eax, [ebp - 0x44]
push eax
call fcn.00409100
push 0x5a3544
push eax
lea eax, [ebp - 0x48]
mov byte [ebp - 4], 0x4a
push eax
call fcn.0040b2f0
lea ecx, [ebp + 0x14]
mov byte [ebp - 4], 0x4b
push ecx
push eax
lea eax, [ebp - 0x4c]
push eax
call fcn.00409100
mov byte [ebp - 4], 0x4c
push 0x5a3544
push eax
lea eax, [ebp - 0x50]
push eax
call fcn.0040b2f0
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 0x4d
push ecx
push eax
lea eax, [ebp - 0x54]
push eax
call fcn.00409100
add esp, 0x48
push 0x5a3544
push eax
lea eax, [ebp - 0x58]
mov byte [ebp - 4], 0x4e
push eax
call fcn.0040b2f0
lea ecx, [ebp + 8]
mov byte [ebp - 4], 0x4f
push ecx
push eax
lea eax, [ebp - 0x5c]
push eax
call fcn.00409100
push 0x5a3544
push eax
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0x50
push eax
call fcn.0040b2f0
lea ecx, [ebp + 0x30]
mov byte [ebp - 4], 0x51
push ecx
push eax
lea eax, [ebp - 0x64]
push eax
call fcn.00409100
push 0x5a3544
push eax
lea eax, [ebp - 0x68]
mov byte [ebp - 4], 0x52
push eax
call fcn.0040b2f0
lea ecx, [ebp + 0x34]
mov byte [ebp - 4], 0x53
push ecx
push eax
lea eax, [ebp - 0x6c]
push eax
call fcn.00409100
add esp, 0x48
push 0x5a3544
push eax
lea eax, [ebp - 0x70]
mov byte [ebp - 4], 0x54
push eax
call fcn.0040b2f0
lea ecx, [ebp + 0x38]
mov byte [ebp - 4], 0x55
push ecx
push eax
lea eax, [ebp - 0x74]
push eax
call fcn.00409100
push 0x5a3544
push eax
lea eax, [ebp - 0x78]
mov byte [ebp - 4], 0x56
push eax
call fcn.0040b2f0
lea ecx, [ebp + 0x3c]
mov byte [ebp - 4], 0x57
push ecx
push eax
lea eax, [ebp - 0x7c]
push eax
call fcn.00409100
push 0x5a3544
push eax
lea eax, [ebp - 0x80]
mov byte [ebp - 4], 0x58
push eax
call fcn.0040b2f0
lea ecx, [ebp + 0x40]
mov byte [ebp - 4], 0x59
push ecx
push eax
lea eax, [ebp - 0x84]
push eax
call fcn.00409100
add esp, 0x48
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 0x5a
push ecx
push eax
lea eax, [ebp - 0x88]
push eax
call fcn.00409100
add esp, 0xc
mov byte [ebp - 4], 0x5b
mov ecx, dword [eax]
call fcn.0040c9b0
mov byte [ebp - 4], 0x5a
mov eax, esi
mov edx, dword [ebp - 0x88]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x414cbd
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x59
mov eax, esi
mov edx, dword [ebp - 0x84]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x414cde
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x58
mov eax, esi
mov edx, dword [ebp - 0x80]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x414cfc
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x57
mov eax, esi
mov edx, dword [ebp - 0x7c]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x414d1a
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x56
mov eax, esi
mov edx, dword [ebp - 0x78]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x414d38
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x55
mov eax, esi
mov edx, dword [ebp - 0x74]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x414d56
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x54
mov eax, esi
mov edx, dword [ebp - 0x70]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x414d74
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x53
mov eax, esi
mov edx, dword [ebp - 0x6c]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x414d92
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x52
mov eax, esi
mov edx, dword [ebp - 0x68]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x414db0
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x51
mov eax, esi
mov edx, dword [ebp - 0x64]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x414dce
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x50
mov eax, esi
mov edx, dword [ebp - 0x60]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x414dec
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x4f
mov eax, esi
mov edx, dword [ebp - 0x5c]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x414e0a
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x4e
mov eax, esi
mov edx, dword [ebp - 0x58]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x414e28
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x4d
mov eax, esi
mov edx, dword [ebp - 0x54]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x414e46
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x4c
mov eax, esi
mov edx, dword [ebp - 0x50]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x414e64
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x4b
mov eax, esi
mov edx, dword [ebp - 0x4c]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x414e82
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x4a
mov eax, esi
mov edx, dword [ebp - 0x48]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x414ea0
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x49
mov eax, esi
mov edx, dword [ebp - 0x44]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x414ebe
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x48
mov eax, esi
mov edx, dword [ebp - 0x40]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x414edc
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x47
mov eax, esi
mov edx, dword [ebp - 0x3c]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x414efa
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x46
mov eax, esi
mov edx, dword [ebp - 0x38]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x414f18
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x45
mov eax, esi
mov edx, dword [ebp - 0x34]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x414f36
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x44
mov eax, esi
mov edx, dword [ebp - 0x30]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x414f54
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x43
mov eax, esi
mov edx, dword [ebp - 0x2c]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x414f72
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x42
mov edx, dword [ebp - 0x28]
jmp 0x41538c
call fcn.00409830
push 0x5a3544
lea eax, [ebp + 0xc]
mov byte [ebp - 4], 0x5c
push eax
lea eax, [ebp - 0x38]
push eax
call fcn.0040b2f0
lea ecx, [ebp + 0x10]
mov byte [ebp - 4], 0x5d
push ecx
push eax
lea eax, [ebp - 0x3c]
push eax
call fcn.00409100
push 0x5a3544
push eax
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 0x5e
push eax
call fcn.0040b2f0
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 0x5f
push ecx
push eax
lea eax, [ebp - 0x44]
push eax
call fcn.00409100
push 0x5a3544
push eax
lea eax, [ebp - 0x48]
mov byte [ebp - 4], 0x60
push eax
call fcn.0040b2f0
lea ecx, [ebp - 0x20]
mov byte [ebp - 4], 0x61
push ecx
push eax
lea eax, [ebp - 0x4c]
push eax
call fcn.00409100
add esp, 0x48
push 0x5a3544
push eax
lea eax, [ebp - 0x50]
mov byte [ebp - 4], 0x62
push eax
call fcn.0040b2f0
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0x63
push ecx
push eax
lea eax, [ebp - 0x54]
push eax
call fcn.00409100
push 0x5a3544
push eax
lea eax, [ebp - 0x58]
mov byte [ebp - 4], 0x64
push eax
call fcn.0040b2f0
lea ecx, [ebp + 0x14]
mov byte [ebp - 4], 0x65
push ecx
push eax
lea eax, [ebp - 0x5c]
push eax
call fcn.00409100
mov byte [ebp - 4], 0x66
push 0x5a3544
push eax
lea eax, [ebp - 0x60]
push eax
call fcn.0040b2f0
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 0x67
push ecx
push eax
lea eax, [ebp - 0x64]
push eax
call fcn.00409100
add esp, 0x48
push 0x5a3544
push eax
lea eax, [ebp - 0x68]
mov byte [ebp - 4], 0x68
push eax
call fcn.0040b2f0
lea ecx, [ebp + 8]
mov byte [ebp - 4], 0x69
push ecx
push eax
lea eax, [ebp - 0x6c]
push eax
call fcn.00409100
push 0x5a3544
push eax
lea eax, [ebp - 0x70]
mov byte [ebp - 4], 0x6a
push eax
call fcn.0040b2f0
lea ecx, [ebp + 0x30]
mov byte [ebp - 4], 0x6b
push ecx
push eax
lea eax, [ebp - 0x74]
push eax
call fcn.00409100
push 0x5a3544
push eax
lea eax, [ebp - 0x78]
mov byte [ebp - 4], 0x6c
push eax
call fcn.0040b2f0
lea ecx, [ebp + 0x34]
mov byte [ebp - 4], 0x6d
push ecx
push eax
lea eax, [ebp - 0x7c]
push eax
call fcn.00409100
add esp, 0x48
push 0x5a3544
push eax
lea eax, [ebp - 0x80]
mov byte [ebp - 4], 0x6e
push eax
call fcn.0040b2f0
lea ecx, [ebp + 0x38]
mov byte [ebp - 4], 0x6f
push ecx
push eax
lea eax, [ebp - 0x84]
push eax
call fcn.00409100
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 0x70
push ecx
push eax
lea eax, [ebp - 0x88]
push eax
call fcn.00409100
add esp, 0x24
mov byte [ebp - 4], 0x71
mov ecx, dword [eax]
call fcn.0040c9b0
mov byte [ebp - 4], 0x70
mov eax, esi
mov edx, dword [ebp - 0x88]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x415148
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x6f
mov eax, esi
mov edx, dword [ebp - 0x84]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x415169
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x6e
mov eax, esi
mov edx, dword [ebp - 0x80]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x415187
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x6d
mov eax, esi
mov edx, dword [ebp - 0x7c]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4151a5
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x6c
mov eax, esi
mov edx, dword [ebp - 0x78]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4151c3
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x6b
mov eax, esi
mov edx, dword [ebp - 0x74]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4151e1
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x6a
mov eax, esi
mov edx, dword [ebp - 0x70]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4151ff
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x69
mov eax, esi
mov edx, dword [ebp - 0x6c]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x41521d
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x68
mov eax, esi
mov edx, dword [ebp - 0x68]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x41523b
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x67
mov eax, esi
mov edx, dword [ebp - 0x64]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x415259
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x66
mov eax, esi
mov edx, dword [ebp - 0x60]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x415277
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x65
mov eax, esi
mov edx, dword [ebp - 0x5c]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x415295
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x64
mov eax, esi
mov edx, dword [ebp - 0x58]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4152b3
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x63
mov eax, esi
mov edx, dword [ebp - 0x54]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4152d1
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x62
mov eax, esi
mov edx, dword [ebp - 0x50]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4152ef
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x61
mov eax, esi
mov edx, dword [ebp - 0x4c]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x41530d
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x60
mov eax, esi
mov edx, dword [ebp - 0x48]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x41532b
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x5f
mov eax, esi
mov edx, dword [ebp - 0x44]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x415349
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x5e
mov eax, esi
mov edx, dword [ebp - 0x40]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x415367
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x5d
mov eax, esi
mov edx, dword [ebp - 0x3c]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x415385
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x5c
mov edx, dword [ebp - 0x38]
mov eax, esi
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4153a3
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0xd
mov eax, esi
mov edx, dword [ebp - 0x24]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4153c1
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0xc
mov eax, esi
mov edx, dword [ebp - 0x18]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4153df
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0xb
mov eax, esi
mov edx, dword [ebp - 0x10]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4153fd
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0xa
mov eax, esi
mov edx, dword [ebp - 0x1c]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x41541b
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 9
mov eax, esi
mov edx, dword [ebp - 0x20]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x415439
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 8
mov eax, esi
mov edx, dword [ebp - 0x14]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x415457
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 7
mov eax, esi
mov edx, dword [ebp + 8]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x415475
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 6
mov eax, esi
mov edx, dword [ebp + 0xc]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x415493
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 5
mov eax, esi
mov edx, dword [ebp + 0x10]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4154b1
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 4
mov eax, esi
mov edx, dword [ebp + 0x14]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4154cf
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 3
mov eax, esi
mov edx, dword [ebp + 0x30]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4154ed
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 2
mov eax, esi
mov edx, dword [ebp + 0x34]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x41550b
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 1
mov eax, esi
mov edx, dword [ebp + 0x38]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x415529
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0
mov eax, esi
mov edx, dword [ebp + 0x3c]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x415547
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp + 0x40]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], esi
dec esi
test esi, esi
jg 0x415566
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret