Function at 0x41bf40
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x555467
mov eax, dword fs:[0]
push eax
sub esp, 0xcc
push ebx
push esi
push edi
mov eax, dword [0x5abbf4]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, dword [ebp + 8]
mov esi, ecx
xor ebx, ebx
mov dword [ebp + 8], ebx
mov dword [ebp - 4], ebx
call fcn.00427d38
xor ecx, ecx
cmp eax, ebx
setne cl
cmp ecx, ebx
jne 0x41bf92
push 0x80004005
call fcn.00401fe0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 1
call fcn.00427d38
xor ecx, ecx
cmp eax, ebx
setne cl
cmp ecx, ebx
jne 0x41bfbf
push 0x80004005
call fcn.00401fe0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x10], eax
mov byte [ebp - 4], 2
call fcn.00427d38
xor ecx, ecx
cmp eax, ebx
setne cl
cmp ecx, ebx
jne 0x41bfec
push 0x80004005
call fcn.00401fe0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebp + 8], eax
mov byte [ebp - 4], 3
call fcn.00427d38
xor ecx, ecx
cmp eax, ebx
setne cl
cmp ecx, ebx
jne 0x41c019
push 0x80004005
call fcn.00401fe0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x1c], eax
mov byte [ebp - 4], 4
call fcn.00427d38
xor ecx, ecx
cmp eax, ebx
setne cl
cmp ecx, ebx
jne 0x41c046
push 0x80004005
call fcn.00401fe0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x14], eax
mov byte [ebp - 4], 5
call fcn.00427d38
xor ecx, ecx
cmp eax, ebx
setne cl
cmp ecx, ebx
jne 0x41c073
push 0x80004005
call fcn.00401fe0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
lea ebx, [eax + 0x10]
mov dword [ebp - 0x20], ebx
push 0
mov dword [ebp - 0xd8], 0x581ae0
call fcn.0052da22
push eax
call fcn.0052d9ef
add esp, 8
mov byte [ebp - 4], 7
mov eax, dword [ebp + 0xc]
add eax, 0xfffffffe
cmp eax, 5
ja case.0x41c0af.5
jmp dword [eax*4 + 0x41ce98]
lea ecx, [ebp + 8]
push ecx
push 0x3f5
mov ecx, esi
call fcn.004317c0
mov ecx, eax
call fcn.0042f013
mov edx, dword [ebp + 8]
mov eax, dword [edx - 0xc]
cmp eax, 3
jl 0x41c40c
cmp eax, 0x10
jg 0x41c40c
lea eax, [ebp - 0x1c]
push eax
push 0x3f6
mov ecx, esi
call fcn.004317c0
mov ecx, eax
call fcn.0042f013
lea ecx, [ebp - 0x1c]
push ecx
lea edx, [ebp + 8]
push edx
call fcn.004149a0
add esp, 8
test al, al
je 0x41c164
push 0
push 0
push 0x58685c
call fcn.004299b1
push 0
mov ecx, edi
call fcn.00402150
lea ecx, [ebp - 0x20]
call fcn.00415430
lea ecx, [ebp - 0x14]
call fcn.00415430
lea ecx, [ebp - 0x1c]
call fcn.00415430
lea ecx, [ebp + 8]
call fcn.00415430
lea ecx, [ebp - 0x10]
call fcn.00415430
lea ecx, [ebp - 0x18]
call fcn.00415430
lea ecx, [ebp + 0x10]
call fcn.00415430
jmp 0x41ce7f
lea eax, [ebp - 0x10]
push eax
push 0x3f4
mov ecx, esi
call fcn.004317c0
mov ecx, eax
call fcn.0042f013
mov ebx, dword [ebp - 0x10]
mov ecx, dword [ebx - 0xc]
test ecx, ecx
jne 0x41c18e
push ecx
push ecx
push 0x586878
jmp 0x41c119
cmp ecx, 3
jl 0x41c3fe
cmp ecx, 0x10
jg 0x41c3fe
xor eax, eax
test ecx, ecx
jle 0x41c1e6
test eax, eax
js 0x41c245
cmp eax, ecx
jg 0x41c245
mov dl, byte [eax + ebx]
cmp dl, 0x7a
jg 0x41c24f
cmp eax, ecx
jg 0x41c245
cmp dl, 0x30
jl 0x41c24f
cmp eax, ecx
jg 0x41c245
cmp dl, 0x39
jle 0x41c1e1
cmp eax, ecx
jg 0x41c245
cmp dl, 0x61
jl 0x41c237
inc eax
cmp eax, ecx
jl 0x41c1a6
lea ecx, [ebp - 0x14]
push ecx
push 0x3f7
mov ecx, esi
call fcn.004317c0
mov ecx, eax
call fcn.0042f013
mov edx, dword [ebp - 0x14]
mov eax, dword [edx - 0xc]
cmp eax, 3
jl 0x41c3f0
cmp eax, 0x10
jg 0x41c3f0
lea eax, [ebp - 0x14]
push eax
lea ecx, [ebp + 8]
push ecx
call fcn.00415400
add esp, 8
test al, al
je 0x41c25d
push 0
push 0
push 0x5868f4
jmp 0x41c119
push 0
push 0
push 0x5868bc
jmp 0x41c119
push 0x80070057
call fcn.00401fe0
push 0
push 0
push 0x5868a0
jmp 0x41c119
push 0x586924
lea edx, [ebp - 0x10]
push edx
lea eax, [ebp - 0xb0]
push eax
call fcn.00403550
lea ecx, [ebp + 8]
push ecx
push eax
lea edx, [ebp - 0x40]
push edx
mov byte [ebp - 4], 8
call fcn.00403100
push 0x586924
push eax
lea eax, [ebp - 0x88]
push eax
mov byte [ebp - 4], 9
call fcn.00403550
lea ecx, [ebp - 0x14]
push ecx
push eax
lea edx, [ebp - 0x38]
push edx
mov byte [ebp - 4], 0xa
call fcn.00403100
push 0x586924
push eax
lea eax, [ebp - 0xc0]
push eax
mov byte [ebp - 4], 0xb
call fcn.00403550
lea ecx, [ebp + 0x10]
push ecx
push eax
lea edx, [ebp - 0xcc]
push edx
mov byte [ebp - 4], 0xc
call fcn.00403100
add esp, 0x48
push 0x586924
push eax
lea eax, [ebp - 0xc4]
push eax
mov byte [ebp - 4], 0xd
call fcn.00403550
add esi, 0x120
push esi
push eax
lea ecx, [ebp - 0xc8]
push ecx
mov byte [ebp - 4], 0xe
call fcn.00403100
push 0x586918
push eax
lea edx, [ebp + 0xc]
push edx
mov byte [ebp - 4], 0xf
call fcn.00403550
add esp, 0x24
push eax
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 0x10
call fcn.00403330
lea ecx, [ebp + 0xc]
call fcn.00415430
lea ecx, [ebp - 0xc8]
call fcn.00415430
lea ecx, [ebp - 0xc4]
call fcn.00415430
lea ecx, [ebp - 0xcc]
call fcn.00415430
lea ecx, [ebp - 0xc0]
call fcn.00415430
lea ecx, [ebp - 0x38]
call fcn.00415430
lea ecx, [ebp - 0x88]
call fcn.00415430
lea ecx, [ebp - 0x40]
call fcn.00415430
lea ecx, [ebp - 0xb0]
mov byte [ebp - 4], 7
call fcn.00415430
push 0x58692c
lea ecx, [ebp - 0x20]
call fcn.00402110
push ecx
mov ecx, esp
mov dword [ebp - 0x28], esp
push 0x586938
call fcn.00402150
mov byte [ebp - 4], 0x11
mov eax, dword [ebp - 0x18]
push ecx
add eax, 0xfffffff0
mov dword [ebp - 0x24], esp
mov esi, esp
push eax
call fcn.00401b20
add eax, 0x10
mov dword [esi], eax
add esp, 4
lea eax, [ebp - 0x48]
push eax
mov byte [ebp - 4], 7
call fcn.00403b60
push eax
lea ecx, [ebp - 0x20]
push ecx
push edi
mov byte [ebp - 4], 0x12
call fcn.00403100
add esp, 0xc
lea ecx, [ebp - 0x48]
call fcn.00415430
jmp 0x41c127
push 0
push 0
push 0x5868d8
jmp 0x41c119
push 0
push 0
push 0x586888
jmp 0x41c119
push 0
push 0
push 0x586844
call fcn.004299b1
push 0
mov ecx, edi
call fcn.00402150
add ebx, 0xfffffff0
mov byte [ebp - 4], 5
lea edx, [ebx + 0xc]
or eax, 0xffffffff
lock xadd dword [edx], eax
dec eax
test eax, eax
jg 0x41cdaa
mov ecx, dword [ebx]
push ebx
jmp 0x41cda3
lea ecx, [ebp - 0x1c]
push ecx
push 0x3f6
mov ecx, esi
call fcn.004317c0
mov ecx, eax
call fcn.0042f013
mov edx, dword [ebp - 0x1c]
mov eax, dword [edx - 0xc]
cmp eax, 3
jl 0x41c6b4
cmp eax, 0x10
jg 0x41c6b4
lea eax, [ebp - 0x14]
push eax
push 0x3f7
mov ecx, esi
call fcn.004317c0
mov ecx, eax
call fcn.0042f013
lea ecx, [ebp - 0x1c]
push ecx
lea edx, [ebp - 0x14]
push edx
call fcn.004149a0
add esp, 8
test al, al
jne 0x41c110
lea eax, [ebp - 0x10]
push eax
push 0x3f4
mov ecx, esi
call fcn.004317c0
mov ecx, eax
call fcn.0042f013
mov ecx, dword [ebp - 0x10]
mov eax, dword [ecx - 0xc]
cmp eax, 3
jl 0x41c3fe
cmp eax, 0x10
jg 0x41c3fe
lea edx, [ebp + 8]
push edx
push 0x3f5
mov ecx, esi
call fcn.004317c0
mov ecx, eax
call fcn.0042f013
mov eax, dword [ebp + 8]
mov eax, dword [eax - 0xc]
cmp eax, 3
jl 0x41c6a6
cmp eax, 0x10
jg 0x41c6a6
lea ecx, [ebp - 0x14]
push ecx
lea edx, [ebp + 8]
push edx
call fcn.00415400
add esp, 8
test al, al
jne 0x41c229
push 0x586924
lea eax, [ebp - 0x10]
push eax
lea ecx, [ebp - 0xa0]
push ecx
call fcn.00403550
lea edx, [ebp + 8]
push edx
push eax
lea eax, [ebp - 0x68]
push eax
mov byte [ebp - 4], 0x13
call fcn.00403100
push 0x586924
push eax
lea ecx, [ebp - 0xb8]
push ecx
mov byte [ebp - 4], 0x14
call fcn.00403550
lea edx, [ebp - 0x14]
push edx
push eax
lea eax, [ebp - 0x60]
push eax
mov byte [ebp - 4], 0x15
call fcn.00403100
push 0x586924
push eax
lea ecx, [ebp - 0x98]
push ecx
mov byte [ebp - 4], 0x16
call fcn.00403550
lea edx, [ebp + 0x10]
push edx
push eax
lea eax, [ebp - 0x58]
push eax
mov byte [ebp - 4], 0x17
call fcn.00403100
add esp, 0x48
push 0x586924
push eax
lea ecx, [ebp - 0xd0]
push ecx
mov byte [ebp - 4], 0x18
call fcn.00403550
add esi, 0x120
push esi
push eax
lea edx, [ebp - 0x50]
push edx
mov byte [ebp - 4], 0x19
call fcn.00403100
push 0x586918
push eax
lea eax, [ebp - 0x90]
push eax
mov byte [ebp - 4], 0x1a
call fcn.00403550
add esp, 0x24
push eax
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 0x1b
call fcn.00403330
lea ecx, [ebp - 0x90]
call fcn.00415430
lea ecx, [ebp - 0x50]
call fcn.00415430
lea ecx, [ebp - 0xd0]
call fcn.00415430
lea ecx, [ebp - 0x58]
call fcn.00415430
lea ecx, [ebp - 0x98]
call fcn.00415430
lea ecx, [ebp - 0x60]
call fcn.00415430
lea ecx, [ebp - 0xb8]
call fcn.00415430
lea ecx, [ebp - 0x68]
call fcn.00415430
lea ecx, [ebp - 0xa0]
mov byte [ebp - 4], 7
call fcn.00415430
push 0x58697c
lea ecx, [ebp - 0x20]
call fcn.00402110
push ecx
mov ecx, esp
mov dword [ebp - 0x24], esp
push 0x586938
call fcn.00402150
mov byte [ebp - 4], 0x1c
mov eax, dword [ebp - 0x18]
push ecx
add eax, 0xfffffff0
mov dword [ebp - 0x28], esp
mov esi, esp
push eax
call fcn.00401b20
add esp, 4
add eax, 0x10
lea ecx, [ebp - 0x70]
mov dword [esi], eax
push ecx
mov byte [ebp - 4], 7
call fcn.00403b60
push eax
lea edx, [ebp - 0x20]
push edx
push edi
mov byte [ebp - 4], 0x1d
call fcn.00403100
add esp, 0xc
lea ecx, [ebp - 0x70]
call fcn.00415430
jmp 0x41c127
push 0
push 0
push 0x586960
jmp 0x41c119
push 0
push 0
push 0x586944
call fcn.004299b1
push 0
mov ecx, edi
call fcn.00402150
add ebx, 0xfffffff0
mov byte [ebp - 4], 5
lea eax, [ebx + 0xc]
or ecx, 0xffffffff
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x41cdaa
mov ecx, dword [ebx]
push ebx
jmp 0x41cda3
lea ecx, [ebp - 0x1c]
push ecx
push 0x3f6
mov ecx, esi
call fcn.004317c0
mov ecx, eax
call fcn.0042f013
lea edx, [ebp - 0x14]
push edx
push 0x3f7
mov ecx, esi
call fcn.004317c0
mov ecx, eax
call fcn.0042f013
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax - 0xc]
cmp eax, 3
jl 0x41c6b4
cmp eax, 0x10
jg 0x41c6b4
lea ecx, [ebp - 0x1c]
push ecx
lea edx, [ebp - 0x14]
push edx
call fcn.004149a0
add esp, 8
test al, al
jne 0x41c110
lea eax, [ebp - 0x10]
push eax
push 0x3f4
mov ecx, esi
call fcn.004317c0
mov ecx, eax
call fcn.0042f013
mov ecx, dword [ebp - 0x10]
mov eax, dword [ecx - 0xc]
cmp eax, 3
jl 0x41c3fe
cmp eax, 0x10
jg 0x41c3fe
lea edx, [ebp + 8]
push edx
push 0x3f5
mov ecx, esi
call fcn.004317c0
mov ecx, eax
call fcn.0042f013
mov eax, dword [ebp + 8]
mov eax, dword [eax - 0xc]
cmp eax, 3
jl 0x41c92e
cmp eax, 0x10
jg 0x41c92e
lea ecx, [ebp - 0x14]
push ecx
lea edx, [ebp + 8]
push edx
call fcn.00415400
add esp, 8
test al, al
jne 0x41c229
push 0x586924
lea eax, [ebp - 0x10]
push eax
lea ecx, [ebp - 0x4c]
push ecx
call fcn.00403550
lea edx, [ebp + 8]
push edx
push eax
lea eax, [ebp - 0x44]
push eax
mov byte [ebp - 4], 0x1e
call fcn.00403100
push 0x586924
push eax
lea ecx, [ebp - 0x3c]
push ecx
mov byte [ebp - 4], 0x1f
call fcn.00403550
lea edx, [ebp - 0x14]
push edx
push eax
lea eax, [ebp - 0x34]
push eax
mov byte [ebp - 4], 0x20
call fcn.00403100
push 0x586924
push eax
lea ecx, [ebp - 0x30]
push ecx
mov byte [ebp - 4], 0x21
call fcn.00403550
lea edx, [ebp + 0x10]
push edx
push eax
lea eax, [ebp - 0x80]
push eax
mov byte [ebp - 4], 0x22
call fcn.00403100
add esp, 0x48
push 0x586924
push eax
lea ecx, [ebp - 0xa8]
push ecx
mov byte [ebp - 4], 0x23
call fcn.00403550
add esi, 0x120
push esi
push eax
lea edx, [ebp - 0x78]
push edx
mov byte [ebp - 4], 0x24
call fcn.00403100
push 0x586918
push eax
lea eax, [ebp - 0x2c]
push eax
mov byte [ebp - 4], 0x25
call fcn.00403550
add esp, 0x24
push eax
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 0x26
call fcn.00403330
lea ecx, [ebp - 0x2c]
call fcn.00415430
lea ecx, [ebp - 0x78]
call fcn.00415430
lea ecx, [ebp - 0xa8]
call fcn.00415430
lea ecx, [ebp - 0x80]
call fcn.00415430
lea ecx, [ebp - 0x30]
call fcn.00415430
lea ecx, [ebp - 0x34]
call fcn.00415430
lea ecx, [ebp - 0x3c]
call fcn.00415430
lea ecx, [ebp - 0x44]
call fcn.00415430
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 7
call fcn.00415430
push 0x5869a0
lea ecx, [ebp - 0x20]
call fcn.00402110
push ecx
mov ecx, esp
mov dword [ebp - 0x24], esp
push 0x586938
call fcn.00402150
mov byte [ebp - 4], 0x27
mov eax, dword [ebp - 0x18]
push ecx
add eax, 0xfffffff0
mov dword [ebp - 0x28], esp
mov esi, esp
push eax
call fcn.00401b20
add esp, 4
add eax, 0x10
lea ecx, [ebp - 0x54]
mov dword [esi], eax
push ecx
mov byte [ebp - 4], 7
call fcn.00403b60
push eax
lea edx, [ebp - 0x20]
push edx
push edi
mov byte [ebp - 4], 0x28
call fcn.00403100
add esp, 0xc
lea ecx, [ebp - 0x54]
call fcn.00415430
jmp 0x41c127
push 0
push 0
push 0x586988
jmp 0x41c119
lea ecx, [ebp - 0x10]
push ecx
push 0x3f4
mov ecx, esi
call fcn.004317c0
mov ecx, eax
call fcn.0042f013
mov edx, dword [ebp - 0x10]
mov eax, dword [edx - 0xc]
cmp eax, 3
jl 0x41caf4
cmp eax, 0x10
jg 0x41caf4
lea eax, [ebp + 8]
push eax
push 0x3f5
mov ecx, esi
call fcn.004317c0
mov ecx, eax
call fcn.0042f013
mov ecx, dword [ebp + 8]
mov eax, dword [ecx - 0xc]
cmp eax, 3
jl 0x41cae6
cmp eax, 0x10
jg 0x41cae6
push 0x586924
lea edx, [ebp - 0x10]
push edx
lea eax, [ebp - 0x8c]
push eax
call fcn.00403550
lea ecx, [ebp + 8]
push ecx
push eax
lea edx, [ebp - 0x84]
push edx
mov byte [ebp - 4], 0x29
call fcn.00403100
push 0x5869c0
push eax
lea eax, [ebp - 0x7c]
push eax
mov byte [ebp - 4], 0x2a
call fcn.00403550
lea ecx, [ebp + 0x10]
push ecx
push eax
lea edx, [ebp - 0x74]
push edx
mov byte [ebp - 4], 0x2b
call fcn.00403100
push 0x586924
push eax
lea eax, [ebp - 0x6c]
push eax
mov byte [ebp - 4], 0x2c
call fcn.00403550
add esi, 0x120
push esi
push eax
lea ecx, [ebp - 0x64]
push ecx
mov byte [ebp - 4], 0x2d
call fcn.00403100
add esp, 0x48
push 0x586918
push eax
lea edx, [ebp - 0x5c]
push edx
mov byte [ebp - 4], 0x2e
call fcn.00403550
add esp, 0xc
push eax
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 0x2f
call fcn.00403330
lea ecx, [ebp - 0x5c]
call fcn.00415430
lea ecx, [ebp - 0x64]
call fcn.00415430
lea ecx, [ebp - 0x6c]
call fcn.00415430
lea ecx, [ebp - 0x74]
call fcn.00415430
lea ecx, [ebp - 0x7c]
call fcn.00415430
lea ecx, [ebp - 0x84]
call fcn.00415430
lea ecx, [ebp - 0x8c]
mov byte [ebp - 4], 7
call fcn.00415430
push 0x5869d4
lea ecx, [ebp - 0x20]
call fcn.00402110
push ecx
mov ecx, esp
mov dword [ebp - 0x24], esp
push 0x586938
call fcn.00402150
mov byte [ebp - 4], 0x30
mov eax, dword [ebp - 0x18]
push ecx
add eax, 0xfffffff0
mov dword [ebp - 0x28], esp
mov esi, esp
push eax
call fcn.00401b20
add eax, 0x10
mov dword [esi], eax
add esp, 4
lea eax, [ebp - 0x94]
push eax
mov byte [ebp - 4], 7
call fcn.00403b60
push eax
lea ecx, [ebp - 0x20]
push ecx
push edi
mov byte [ebp - 4], 0x31
call fcn.00403100
add esp, 0xc
lea ecx, [ebp - 0x94]
call fcn.00415430
jmp 0x41c127
push 0
push 0
push 0x5869ac
jmp 0x41c119
push 0
push 0
push 0x586888
jmp 0x41c415
push 0x5869e0
lea ecx, [ebp - 0x20]
call fcn.00402110
lea ecx, [ebp + 0x10]
push ecx
lea edx, [ebp - 0xb4]
push 0x5869ec
push edx
call fcn.0041dcd0
push 0x586924
push eax
lea eax, [ebp - 0xac]
push eax
mov byte [ebp - 4], 0x32
call fcn.00403550
add esi, 0x120
push esi
push eax
lea ecx, [ebp - 0xa4]
push ecx
mov byte [ebp - 4], 0x33
call fcn.00403100
push 0x586918
push eax
lea edx, [ebp - 0x9c]
mov bl, 0x34
push edx
mov byte [ebp - 4], bl
call fcn.00403550
add esp, 0x30
push eax
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 0x35
call fcn.00403330
mov byte [ebp - 4], bl
mov eax, dword [ebp - 0x9c]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x41cb9e
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x33
mov eax, dword [ebp - 0xa4]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x41cbc4
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x32
mov eax, dword [ebp - 0xac]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x41cbea
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 7
mov eax, dword [ebp - 0xb4]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x41cc10
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
push ecx
mov ecx, esp
mov dword [ebp - 0x24], esp
push 0x586938
call fcn.00402150
mov byte [ebp - 4], 0x36
mov ebx, dword [ebp - 0x18]
push ecx
add ebx, 0xfffffff0
mov dword [ebp - 0x28], esp
mov esi, esp
push ebx
call fcn.00401b20
add esp, 4
add eax, 0x10
lea ecx, [ebp - 0xbc]
mov dword [esi], eax
push ecx
mov byte [ebp - 4], 7
call fcn.00403b60
push eax
lea edx, [ebp - 0x20]
push edx
push edi
mov byte [ebp - 4], 0x37
call fcn.00403100
mov byte [ebp - 4], 7
mov eax, dword [ebp - 0xbc]
add eax, 0xfffffff0
add esp, 0xc
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x41cc86
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 5
mov eax, dword [ebp - 0x20]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x41cca9
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 4
mov eax, dword [ebp - 0x14]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x41cccc
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 3
mov eax, dword [ebp - 0x1c]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x41ccef
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 2
mov eax, dword [ebp + 8]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x41cd12
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 1
mov eax, dword [ebp - 0x10]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x41cd35
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0
lea ecx, [ebx + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x41ce59
mov ecx, dword [ebx]
mov eax, dword [ecx]
mov edx, dword [eax + 4]
push ebx
call edx
jmp 0x41ce59
call fcn.00427d38
xor ecx, ecx
test eax, eax
setne cl
test ecx, ecx
jne 0x41cd75
push 0x80004005
call fcn.00401fe0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [edi], eax
mov ecx, edi
call fcn.00401df0
lea eax, [ebx - 0x10]
mov byte [ebp - 4], 5
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x41cdaa
mov ecx, dword [eax]
push eax
mov edx, dword [ecx]
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 4
mov eax, dword [ebp - 0x14]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x41cdcd
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 3
mov eax, dword [ebp - 0x1c]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x41cdf0
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 2
mov eax, dword [ebp + 8]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x41ce13
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 1
mov eax, dword [ebp - 0x10]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x41ce36
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0
mov eax, dword [ebp - 0x18]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x41ce59
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp + 0x10]
add eax, 0xfffffff0
or edx, 0xffffffff
lea ecx, [eax + 0xc]
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x41ce7f
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, edi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc