Function at 0x40d210
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x18
cmp dword [0x7c9850], 0
push ebx
push esi
mov esi, edx
mov dword [ebp - 4], ecx
jne 0x40d238
call fcn.0040cfc0
mov ecx, dword [ebp - 4]
mov dword [0x7c9850], 1
mov ebx, dword [ebp + 8]
mov eax, ebx
sub eax, 0x80
je 0x40d269
sub eax, 0x40
je 0x40d261
sub eax, 0x40
je 0x40d259
pop esi
mov eax, 0xffffffe0
pop ebx
mov esp, ebp
pop ebp
ret
mov dword [ecx], 0xe
jmp 0x40d26f
mov dword [ecx], 0xc
jmp 0x40d26f
mov dword [ecx], 0xa
push edi
shr ebx, 5
lea eax, [ecx + 8]
xor edi, edi
mov dword [ecx + 4], eax
test ebx, ebx
je 0x40d2af
add esi, 2
movzx edx, byte [esi + 1]
lea esi, [esi + 4]
movzx ecx, byte [esi - 4]
shl edx, 8
or edx, ecx
movzx ecx, byte [esi - 5]
shl edx, 8
or edx, ecx
movzx ecx, byte [esi - 6]
shl edx, 8
or edx, ecx
mov dword [eax + edi*4], edx
inc edi
cmp edi, ebx
jb 0x40d282
mov ecx, dword [ebp - 4]
mov ecx, dword [ecx]
sub ecx, 0xa
je 0x40dcd2
sub ecx, 2
je 0x40d8cc
sub ecx, 2
jne 0x40e0bc
mov ecx, dword [eax + 0x1c]
mov dword [ebp - 4], ecx
movzx ecx, cl
mov edx, dword [eax + 4]
mov esi, dword [eax + 8]
movzx ebx, byte [ecx + 0x7c9860]
movzx ecx, byte [eax + 0x1f]
shl ebx, 8
movzx ecx, byte [ecx + 0x7c9860]
xor ebx, ecx
movzx ecx, byte [eax + 0x1e]
shl ebx, 8
movzx ecx, byte [ecx + 0x7c9860]
xor ebx, ecx
movzx ecx, byte [eax + 0x1d]
shl ebx, 8
movzx ecx, byte [ecx + 0x7c9860]
xor ebx, ecx
xor ebx, dword [eax]
xor ebx, dword [0x7c9e60]
xor edx, ebx
mov dword [ebp - 0xc], ebx
xor esi, edx
mov dword [eax + 0x20], ebx
mov ebx, dword [eax + 0xc]
xor ebx, esi
mov dword [eax + 0x24], edx
mov dword [eax + 0x2c], ebx
movzx ecx, byte [eax + 0x2f]
mov dword [eax + 0x28], esi
movzx edi, byte [ecx + 0x7c9860]
movzx ecx, byte [eax + 0x2e]
shl edi, 8
movzx ecx, byte [ecx + 0x7c9860]
xor edi, ecx
movzx ecx, byte [eax + 0x2d]
shl edi, 8
movzx ecx, byte [ecx + 0x7c9860]
xor edi, ecx
movzx ecx, bl
shl edi, 8
movzx ecx, byte [ecx + 0x7c9860]
xor edi, ecx
mov ecx, dword [eax + 0x18]
xor edi, dword [eax + 0x10]
mov dword [ebp - 8], edi
mov dword [eax + 0x30], edi
mov edi, dword [eax + 0x14]
xor edi, dword [ebp - 8]
xor ecx, edi
mov dword [eax + 0x34], edi
xor dword [ebp - 4], ecx
mov dword [ebp - 0x10], ecx
mov dword [eax + 0x38], ecx
mov ecx, dword [ebp - 4]
mov dword [eax + 0x3c], ecx
movzx ecx, cl
movzx ecx, byte [ecx + 0x7c9860]
shl ecx, 8
mov dword [ebp + 8], ecx
movzx ecx, byte [eax + 0x3f]
movzx ecx, byte [ecx + 0x7c9860]
xor dword [ebp + 8], ecx
movzx ecx, byte [eax + 0x3e]
shl dword [ebp + 8], 8
movzx ecx, byte [ecx + 0x7c9860]
xor dword [ebp + 8], ecx
movzx ecx, byte [eax + 0x3d]
shl dword [ebp + 8], 8
movzx ecx, byte [ecx + 0x7c9860]
xor dword [ebp + 8], ecx
mov ecx, dword [ebp + 8]
xor ecx, dword [ebp - 0xc]
xor ecx, dword [0x7c9e64]
mov dword [ebp + 8], ecx
mov dword [eax + 0x40], ecx
xor ecx, edx
mov edx, ecx
mov dword [ebp - 0x14], ecx
mov dword [eax + 0x44], ecx
xor edx, esi
mov ecx, edx
mov dword [eax + 0x48], edx
xor ecx, ebx
mov dword [ebp - 0xc], ecx
mov dword [eax + 0x4c], ecx
movzx ecx, byte [eax + 0x4f]
mov ebx, dword [ebp - 0xc]
movzx esi, byte [ecx + 0x7c9860]
movzx ecx, byte [eax + 0x4e]
shl esi, 8
movzx ecx, byte [ecx + 0x7c9860]
xor esi, ecx
movzx ecx, byte [eax + 0x4d]
shl esi, 8
movzx ecx, byte [ecx + 0x7c9860]
xor esi, ecx
movzx ecx, bl
shl esi, 8
movzx ecx, byte [ecx + 0x7c9860]
xor esi, ecx
xor esi, dword [ebp - 8]
mov dword [ebp - 0xc], esi
mov dword [eax + 0x50], esi
xor esi, edi
mov edi, esi
mov dword [eax + 0x54], esi
xor edi, dword [ebp - 0x10]
mov ecx, edi
mov dword [eax + 0x58], edi
xor ecx, dword [ebp - 4]
mov dword [ebp - 0x10], ecx
mov dword [eax + 0x5c], ecx
movzx ecx, cl
movzx ecx, byte [ecx + 0x7c9860]
shl ecx, 8
mov dword [ebp - 4], ecx
movzx ecx, byte [eax + 0x5f]
movzx ecx, byte [ecx + 0x7c9860]
xor dword [ebp - 4], ecx
movzx ecx, byte [eax + 0x5e]
shl dword [ebp - 4], 8
movzx ecx, byte [ecx + 0x7c9860]
xor dword [ebp - 4], ecx
movzx ecx, byte [eax + 0x5d]
shl dword [ebp - 4], 8
movzx ecx, byte [ecx + 0x7c9860]
xor dword [ebp - 4], ecx
mov ecx, dword [ebp - 4]
xor ecx, dword [ebp + 8]
xor ecx, dword [0x7c9e68]
mov dword [ebp - 4], ecx
mov dword [eax + 0x60], ecx
xor ecx, dword [ebp - 0x14]
mov dword [ebp + 8], ecx
mov dword [eax + 0x64], ecx
xor ecx, edx
mov edx, ecx
mov dword [ebp - 0x14], ecx
xor edx, ebx
mov dword [eax + 0x68], ecx
mov dword [eax + 0x6c], edx
movzx ecx, byte [eax + 0x6f]
movzx ebx, byte [ecx + 0x7c9860]
movzx ecx, byte [eax + 0x6e]
shl ebx, 8
movzx ecx, byte [ecx + 0x7c9860]
xor ebx, ecx
movzx ecx, byte [eax + 0x6d]
shl ebx, 8
movzx ecx, byte [ecx + 0x7c9860]
xor ebx, ecx
movzx ecx, dl
shl ebx, 8
movzx ecx, byte [ecx + 0x7c9860]
xor ebx, ecx
xor ebx, dword [ebp - 0xc]
mov dword [ebp - 0xc], ebx
mov dword [eax + 0x70], ebx
xor ebx, esi
mov dword [eax + 0x74], ebx
mov esi, ebx
xor esi, edi
mov ecx, esi
mov dword [eax + 0x78], esi
xor ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], ecx
mov dword [eax + 0x7c], ecx
movzx ecx, cl
movzx edi, byte [ecx + 0x7c9860]
movzx ecx, byte [eax + 0x7f]
shl edi, 8
movzx ecx, byte [ecx + 0x7c9860]
xor edi, ecx
movzx ecx, byte [eax + 0x7e]
shl edi, 8
movzx ecx, byte [ecx + 0x7c9860]
xor edi, ecx
movzx ecx, byte [eax + 0x7d]
shl edi, 8
movzx ecx, byte [ecx + 0x7c9860]
xor edi, ecx
xor edi, dword [ebp - 4]
xor edi, dword [0x7c9e6c]
mov dword [ebp - 8], edi
mov dword [eax + 0x80], edi
xor edi, dword [ebp + 8]
mov ecx, edi
mov dword [eax + 0x84], edi
xor ecx, dword [ebp - 0x14]
mov dword [ebp - 4], ecx
mov dword [eax + 0x88], ecx
xor ecx, edx
mov dword [ebp - 0x14], ecx
mov dword [eax + 0x8c], ecx
movzx ecx, byte [eax + 0x8f]
movzx edx, byte [ecx + 0x7c9860]
movzx ecx, byte [eax + 0x8e]
shl edx, 8
movzx ecx, byte [ecx + 0x7c9860]
xor edx, ecx
movzx ecx, byte [eax + 0x8d]
shl edx, 8
movzx ecx, byte [ecx + 0x7c9860]
xor edx, ecx
shl edx, 8
mov dword [ebp + 8], edx
mov edx, dword [ebp - 0x14]
movzx ecx, dl
movzx ecx, byte [ecx + 0x7c9860]
xor dword [ebp + 8], ecx
mov ecx, dword [ebp + 8]
xor ecx, dword [ebp - 0xc]
mov dword [ebp + 8], ecx
mov dword [eax + 0x90], ecx
xor ecx, ebx
mov ebx, ecx
mov dword [ebp - 0xc], ecx
xor ebx, esi
mov dword [eax + 0x94], ecx
mov ecx, ebx
mov dword [eax + 0x98], ebx
xor ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], ecx
mov dword [eax + 0x9c], ecx
movzx ecx, cl
movzx esi, byte [ecx + 0x7c9860]
movzx ecx, byte [eax + 0x9f]
shl esi, 8
movzx ecx, byte [ecx + 0x7c9860]
xor esi, ecx
movzx ecx, byte [eax + 0x9e]
shl esi, 8
movzx ecx, byte [ecx + 0x7c9860]
xor esi, ecx
movzx ecx, byte [eax + 0x9d]
shl esi, 8
movzx ecx, byte [ecx + 0x7c9860]
xor esi, ecx
xor esi, dword [ebp - 8]
xor esi, dword [0x7c9e70]
mov dword [ebp - 8], esi
mov dword [eax + 0xa0], esi
xor esi, edi
mov edi, esi
mov dword [eax + 0xa4], esi
xor edi, dword [ebp - 4]
mov ecx, edi
mov dword [eax + 0xa8], edi
xor ecx, edx
mov dword [ebp - 0x14], ecx
mov dword [eax + 0xac], ecx
movzx ecx, byte [eax + 0xaf]
movzx edx, byte [ecx + 0x7c9860]
movzx ecx, byte [eax + 0xae]
shl edx, 8
movzx ecx, byte [ecx + 0x7c9860]
xor edx, ecx
movzx ecx, byte [eax + 0xad]
shl edx, 8
movzx ecx, byte [ecx + 0x7c9860]
xor edx, ecx
shl edx, 8
mov dword [ebp - 4], edx
mov edx, dword [ebp - 0x14]
movzx ecx, dl
movzx ecx, byte [ecx + 0x7c9860]
xor dword [ebp - 4], ecx
mov ecx, dword [ebp - 4]
xor ecx, dword [ebp + 8]
mov dword [ebp - 4], ecx
mov dword [eax + 0xb0], ecx
xor ecx, dword [ebp - 0xc]
mov dword [ebp - 0xc], ecx
mov dword [eax + 0xb4], ecx
xor ecx, ebx
mov ebx, ecx
mov dword [ebp - 0x18], ecx
xor ebx, dword [ebp - 0x10]
mov dword [eax + 0xb8], ecx
movzx ecx, bl
mov dword [eax + 0xbc], ebx
movzx ecx, byte [ecx + 0x7c9860]
shl ecx, 8
mov dword [ebp + 8], ecx
movzx ecx, byte [eax + 0xbf]
movzx ecx, byte [ecx + 0x7c9860]
xor dword [ebp + 8], ecx
movzx ecx, byte [eax + 0xbe]
shl dword [ebp + 8], 8
movzx ecx, byte [ecx + 0x7c9860]
xor dword [ebp + 8], ecx
movzx ecx, byte [eax + 0xbd]
shl dword [ebp + 8], 8
movzx ecx, byte [ecx + 0x7c9860]
xor dword [ebp + 8], ecx
mov ecx, dword [ebp + 8]
xor ecx, dword [ebp - 8]
xor ecx, dword [0x7c9e74]
mov dword [ebp + 8], ecx
mov dword [eax + 0xc0], ecx
xor ecx, esi
mov esi, ecx
mov dword [ebp - 0x10], ecx
xor esi, edi
mov dword [eax + 0xc4], ecx
mov ecx, esi
mov dword [eax + 0xc8], esi
xor ecx, edx
mov dword [ebp - 0x14], ecx
mov edx, ecx
mov dword [eax + 0xcc], ecx
movzx ecx, byte [eax + 0xcf]
movzx edi, byte [ecx + 0x7c9860]
movzx ecx, byte [eax + 0xce]
shl edi, 8
movzx ecx, byte [ecx + 0x7c9860]
xor edi, ecx
movzx ecx, byte [eax + 0xcd]
shl edi, 8
movzx ecx, byte [ecx + 0x7c9860]
xor edi, ecx
movzx ecx, dl
shl edi, 8
movzx ecx, byte [ecx + 0x7c9860]
xor edi, ecx
xor edi, dword [ebp - 4]
mov dword [ebp - 0x14], edi
mov dword [eax + 0xd0], edi
xor edi, dword [ebp - 0xc]
mov ecx, edi
mov dword [eax + 0xd4], edi
xor ecx, dword [ebp - 0x18]
mov dword [ebp - 0x18], ecx
mov dword [eax + 0xd8], ecx
xor ecx, ebx
mov dword [ebp - 0xc], ecx
mov dword [eax + 0xdc], ecx
movzx ecx, cl
movzx ebx, byte [ecx + 0x7c9860]
movzx ecx, byte [eax + 0xdf]
shl ebx, 8
movzx ecx, byte [ecx + 0x7c9860]
xor ebx, ecx
movzx ecx, byte [eax + 0xde]
shl ebx, 8
movzx ecx, byte [ecx + 0x7c9860]
xor ebx, ecx
movzx ecx, byte [eax + 0xdd]
shl ebx, 8
movzx ecx, byte [ecx + 0x7c9860]
xor ebx, ecx
xor ebx, dword [ebp + 8]
xor ebx, dword [0x7c9e78]
mov dword [eax + 0xe0], ebx
xor ebx, dword [ebp - 0x10]
mov dword [eax + 0xe4], ebx
xor ebx, esi
mov dword [eax + 0xe8], ebx
xor ebx, edx
mov dword [eax + 0xec], ebx
movzx ecx, byte [eax + 0xef]
movzx edx, byte [ecx + 0x7c9860]
movzx ecx, byte [eax + 0xee]
shl edx, 8
movzx ecx, byte [ecx + 0x7c9860]
xor edx, ecx
movzx ecx, byte [eax + 0xed]
shl edx, 8
movzx ecx, byte [ecx + 0x7c9860]
xor edx, ecx
movzx ecx, bl
shl edx, 8
movzx ecx, byte [ecx + 0x7c9860]
xor edx, ecx
xor edx, dword [ebp - 0x14]
mov dword [eax + 0xf0], edx
xor edx, edi
mov dword [eax + 0xf4], edx
xor edx, dword [ebp - 0x18]
mov dword [eax + 0xf8], edx
xor edx, dword [ebp - 0xc]
pop edi
pop esi
mov dword [eax + 0xfc], edx
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [eax + 0x14]
movzx ecx, dl
mov esi, dword [eax + 4]
mov edi, dword [eax + 8]
movzx ebx, byte [ecx + 0x7c9860]
movzx ecx, byte [eax + 0x17]
shl ebx, 8
movzx ecx, byte [ecx + 0x7c9860]
xor ebx, ecx
movzx ecx, byte [eax + 0x16]
shl ebx, 8
movzx ecx, byte [ecx + 0x7c9860]
xor ebx, ecx
movzx ecx, byte [eax + 0x15]
shl ebx, 8
movzx ecx, byte [ecx + 0x7c9860]
xor ebx, ecx
mov ecx, dword [eax + 0x10]
xor ebx, dword [eax]
xor ebx, dword [0x7c9e60]
xor esi, ebx
mov dword [ebp + 8], ebx
xor edi, esi
mov dword [eax + 0x18], ebx
mov ebx, dword [eax + 0xc]
xor ebx, edi
mov dword [eax + 0x1c], esi
xor ecx, ebx
mov dword [eax + 0x20], edi
mov dword [ebp - 0x18], ecx
mov dword [eax + 0x28], ecx
xor ecx, edx
mov dword [ebp - 0x14], ecx
mov dword [eax + 0x2c], ecx
movzx ecx, cl
mov dword [eax + 0x24], ebx
movzx edx, byte [ecx + 0x7c9860]
movzx ecx, byte [eax + 0x2f]
shl edx, 8
movzx ecx, byte [ecx + 0x7c9860]
xor edx, ecx
movzx ecx, byte [eax + 0x2e]
shl edx, 8
movzx ecx, byte [ecx + 0x7c9860]
xor edx, ecx
movzx ecx, byte [eax + 0x2d]
shl edx, 8
movzx ecx, byte [ecx + 0x7c9860]
xor edx, ecx
xor edx, dword [ebp + 8]
xor edx, dword [0x7c9e64]
mov dword [ebp - 0x10], edx
mov dword [eax + 0x30], edx
xor edx, esi
mov esi, edx
mov dword [eax + 0x34], edx
xor esi, edi
mov edi, esi
mov dword [eax + 0x38], esi
xor edi, ebx
mov ebx, edi
mov dword [eax + 0x3c], edi
xor ebx, dword [ebp - 0x18]
mov ecx, ebx
mov dword [eax + 0x40], ebx
xor ecx, dword [ebp - 0x14]
mov dword [ebp - 0x18], ecx
mov dword [eax + 0x44], ecx
movzx ecx, cl
movzx ecx, byte [ecx + 0x7c9860]
shl ecx, 8
mov dword [ebp + 8], ecx
movzx ecx, byte [eax + 0x47]
movzx ecx, byte [ecx + 0x7c9860]
xor dword [ebp + 8], ecx
movzx ecx, byte [eax + 0x46]
shl dword [ebp + 8], 8
movzx ecx, byte [ecx + 0x7c9860]
xor dword [ebp + 8], ecx
shl dword [ebp + 8], 8
movzx ecx, byte [eax + 0x45]
movzx ecx, byte [ecx + 0x7c9860]
xor dword [ebp + 8], ecx
mov ecx, dword [ebp + 8]
xor ecx, dword [ebp - 0x10]
xor ecx, dword [0x7c9e68]
mov dword [ebp + 8], ecx
mov dword [eax + 0x48], ecx
xor ecx, edx
mov edx, ecx
mov dword [ebp - 0x14], ecx
mov dword [eax + 0x4c], ecx
xor edx, esi
mov esi, edx
mov dword [eax + 0x50], edx
xor esi, edi
mov edi, esi
mov dword [eax + 0x54], esi
xor edi, ebx
mov ebx, edi
mov dword [eax + 0x58], edi
xor ebx, dword [ebp - 0x18]
movzx ecx, bl
mov dword [eax + 0x5c], ebx
movzx ecx, byte [ecx + 0x7c9860]
shl ecx, 8
mov dword [ebp - 4], ecx
movzx ecx, byte [eax + 0x5f]
movzx ecx, byte [ecx + 0x7c9860]
xor dword [ebp - 4], ecx
movzx ecx, byte [eax + 0x5e]
shl dword [ebp - 4], 8
movzx ecx, byte [ecx + 0x7c9860]
xor dword [ebp - 4], ecx
movzx ecx, byte [eax + 0x5d]
shl dword [ebp - 4], 8
movzx ecx, byte [ecx + 0x7c9860]
xor dword [ebp - 4], ecx
mov ecx, dword [ebp - 4]
xor ecx, dword [ebp + 8]
xor ecx, dword [0x7c9e6c]
mov dword [ebp - 4], ecx
mov dword [eax + 0x60], ecx
xor ecx, dword [ebp - 0x14]
mov dword [ebp + 8], ecx
mov dword [eax + 0x64], ecx
xor ecx, edx
mov edx, ecx
mov dword [ebp - 0x18], ecx
mov dword [eax + 0x68], ecx
xor edx, esi
mov esi, edx
mov dword [eax + 0x6c], edx
xor esi, edi
mov ecx, esi
mov dword [eax + 0x70], esi
xor ecx, ebx
mov dword [ebp - 0x14], ecx
mov dword [eax + 0x74], ecx
movzx ecx, cl
movzx ebx, byte [ecx + 0x7c9860]
movzx ecx, byte [eax + 0x77]
shl ebx, 8
movzx ecx, byte [ecx + 0x7c9860]
xor ebx, ecx
movzx ecx, byte [eax + 0x76]
shl ebx, 8
movzx ecx, byte [ecx + 0x7c9860]
xor ebx, ecx
movzx ecx, byte [eax + 0x75]
shl ebx, 8
movzx ecx, byte [ecx + 0x7c9860]
xor ebx, ecx
xor ebx, dword [ebp - 4]
xor ebx, dword [0x7c9e70]
mov edi, ebx
mov dword [ebp - 0x10], ebx
xor edi, dword [ebp + 8]
mov dword [eax + 0x78], ebx
mov ebx, edi
xor ebx, dword [ebp - 0x18]
mov dword [eax + 0x7c], edi
mov ecx, ebx
mov dword [eax + 0x80], ebx
xor ecx, edx
mov edx, ecx
mov dword [ebp + 8], ecx
mov dword [eax + 0x84], ecx
xor edx, esi
mov ecx, edx
mov dword [eax + 0x88], edx
xor ecx, dword [ebp - 0x14]
mov dword [ebp - 0x18], ecx
mov dword [eax + 0x8c], ecx
movzx ecx, cl
movzx esi, byte [ecx + 0x7c9860]
movzx ecx, byte [eax + 0x8f]
shl esi, 8
movzx ecx, byte [ecx + 0x7c9860]
xor esi, ecx
movzx ecx, byte [eax + 0x8e]
shl esi, 8
movzx ecx, byte [ecx + 0x7c9860]
xor esi, ecx
movzx ecx, byte [eax + 0x8d]
shl esi, 8
movzx ecx, byte [ecx + 0x7c9860]
xor esi, ecx
xor esi, dword [ebp - 0x10]
xor esi, dword [0x7c9e74]
mov dword [ebp - 0x14], esi
mov dword [eax + 0x90], esi
xor esi, edi
mov edi, esi
mov dword [eax + 0x94], esi
xor edi, ebx
mov ebx, edi
mov dword [eax + 0x98], edi
xor ebx, dword [ebp + 8]
mov ecx, ebx
mov dword [eax + 0x9c], ebx
xor ecx, edx
mov edx, ecx
mov dword [ebp - 0x10], ecx
xor edx, dword [ebp - 0x18]
mov dword [eax + 0xa0], ecx
movzx ecx, dl
mov dword [eax + 0xa4], edx
movzx ecx, byte [ecx + 0x7c9860]
shl ecx, 8
mov dword [ebp + 8], ecx
movzx ecx, byte [eax + 0xa7]
movzx ecx, byte [ecx + 0x7c9860]
xor dword [ebp + 8], ecx
movzx ecx, byte [eax + 0xa6]
shl dword [ebp + 8], 8
movzx ecx, byte [ecx + 0x7c9860]
xor dword [ebp + 8], ecx
movzx ecx, byte [eax + 0xa5]
shl dword [ebp + 8], 8
movzx ecx, byte [ecx + 0x7c9860]
xor dword [ebp + 8], ecx
mov ecx, dword [ebp + 8]
xor ecx, dword [ebp - 0x14]
xor ecx, dword [0x7c9e78]
mov dword [ebp + 8], ecx
mov dword [eax + 0xa8], ecx
xor ecx, esi
mov esi, ecx
mov dword [ebp - 0x18], ecx
xor esi, edi
mov dword [eax + 0xac], ecx
mov edi, esi
mov dword [eax + 0xb0], esi
xor edi, ebx
mov ecx, edi
mov dword [eax + 0xb4], edi
xor ecx, dword [ebp - 0x10]
mov ebx, ecx
mov dword [ebp - 0x14], ecx
xor ebx, edx
mov dword [eax + 0xb8], ecx
mov dword [eax + 0xbc], ebx
movzx ecx, bl
movzx edx, byte [ecx + 0x7c9860]
movzx ecx, byte [eax + 0xbf]
shl edx, 8
movzx ecx, byte [ecx + 0x7c9860]
xor edx, ecx
movzx ecx, byte [eax + 0xbe]
shl edx, 8
movzx ecx, byte [ecx + 0x7c9860]
xor edx, ecx
movzx ecx, byte [eax + 0xbd]
shl edx, 8
movzx ecx, byte [ecx + 0x7c9860]
xor edx, ecx
mov ecx, dword [ebp - 0x18]
xor edx, dword [ebp + 8]
xor edx, dword [0x7c9e7c]
xor ecx, edx
mov dword [eax + 0xc0], edx
xor esi, ecx
mov dword [eax + 0xc4], ecx
mov ecx, dword [ebp - 0x14]
xor edi, esi
xor ecx, edi
mov dword [eax + 0xcc], edi
xor ebx, ecx
mov dword [eax + 0xc8], esi
pop edi
mov dword [eax + 0xd4], ebx
pop esi
mov dword [eax + 0xd0], ecx
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret
mov ebx, dword [eax + 0xc]
movzx ecx, bl
mov edx, dword [eax + 4]
mov esi, dword [eax + 8]
movzx edi, byte [ecx + 0x7c9860]
movzx ecx, byte [eax + 0xf]
shl edi, 8
movzx ecx, byte [ecx + 0x7c9860]
xor edi, ecx
movzx ecx, byte [eax + 0xe]
shl edi, 8
movzx ecx, byte [ecx + 0x7c9860]
xor edi, ecx
movzx ecx, byte [eax + 0xd]
shl edi, 8
movzx ecx, byte [ecx + 0x7c9860]
xor edi, ecx
xor edi, dword [eax]
xor edi, dword [0x7c9e60]
xor edx, edi
mov dword [eax + 0x10], edi
xor esi, edx
mov dword [eax + 0x14], edx
xor ebx, esi
mov dword [eax + 0x18], esi
movzx ecx, bl
mov dword [eax + 0x1c], ebx
mov dword [ebp + 8], ebx
movzx ebx, byte [ecx + 0x7c9860]
movzx ecx, byte [eax + 0x1f]
shl ebx, 8
movzx ecx, byte [ecx + 0x7c9860]
xor ebx, ecx
movzx ecx, byte [eax + 0x1e]
shl ebx, 8
movzx ecx, byte [ecx + 0x7c9860]
xor ebx, ecx
movzx ecx, byte [eax + 0x1d]
shl ebx, 8
movzx ecx, byte [ecx + 0x7c9860]
xor ebx, ecx
xor ebx, edi
xor ebx, dword [0x7c9e64]
mov edi, ebx
mov dword [ebp - 0x18], ebx
xor edi, edx
mov dword [eax + 0x20], ebx
mov edx, edi
mov dword [eax + 0x24], edi
xor edx, esi
mov ebx, edx
mov dword [eax + 0x28], edx
xor ebx, dword [ebp + 8]
movzx ecx, bl
mov dword [eax + 0x2c], ebx
movzx esi, byte [ecx + 0x7c9860]
movzx ecx, byte [eax + 0x2f]
shl esi, 8
movzx ecx, byte [ecx + 0x7c9860]
xor esi, ecx
movzx ecx, byte [eax + 0x2e]
shl esi, 8
movzx ecx, byte [ecx + 0x7c9860]
xor esi, ecx
movzx ecx, byte [eax + 0x2d]
shl esi, 8
movzx ecx, byte [ecx + 0x7c9860]
xor esi, ecx
xor esi, dword [ebp - 0x18]
xor esi, dword [0x7c9e68]
mov dword [ebp + 8], esi
mov dword [eax + 0x30], esi
xor esi, edi
mov edi, esi
mov dword [eax + 0x34], esi
xor edi, edx
mov edx, edi
mov dword [eax + 0x38], edi
xor edx, ebx
mov dword [eax + 0x3c], edx
movzx ecx, dl
movzx ebx, byte [ecx + 0x7c9860]
movzx ecx, byte [eax + 0x3f]
shl ebx, 8
movzx ecx, byte [ecx + 0x7c9860]
xor ebx, ecx
movzx ecx, byte [eax + 0x3e]
shl ebx, 8
movzx ecx, byte [ecx + 0x7c9860]
xor ebx, ecx
movzx ecx, byte [eax + 0x3d]
shl ebx, 8
movzx ecx, byte [ecx + 0x7c9860]
xor ebx, ecx
xor ebx, dword [ebp + 8]
xor ebx, dword [0x7c9e6c]
mov dword [ebp + 8], ebx
mov dword [eax + 0x40], ebx
xor ebx, esi
mov esi, ebx
mov dword [eax + 0x44], ebx
xor esi, edi
mov ecx, esi
mov dword [eax + 0x48], esi
xor ecx, edx
mov dword [ebp - 0x18], ecx
mov dword [eax + 0x4c], ecx
movzx ecx, cl
movzx edx, byte [ecx + 0x7c9860]
movzx ecx, byte [eax + 0x4f]
shl edx, 8
movzx ecx, byte [ecx + 0x7c9860]
xor edx, ecx
movzx ecx, byte [eax + 0x4e]
shl edx, 8
movzx ecx, byte [ecx + 0x7c9860]
xor edx, ecx
movzx ecx, byte [eax + 0x4d]
shl edx, 8
movzx ecx, byte [ecx + 0x7c9860]
xor edx, ecx
xor edx, dword [ebp + 8]
xor edx, dword [0x7c9e70]
mov dword [ebp + 8], edx
mov dword [eax + 0x50], edx
xor edx, ebx
mov edi, edx
mov dword [eax + 0x54], edx
xor edi, esi
mov ebx, edi
mov dword [eax + 0x58], edi
xor ebx, dword [ebp - 0x18]
movzx ecx, bl
mov dword [eax + 0x5c], ebx
movzx esi, byte [ecx + 0x7c9860]
movzx ecx, byte [eax + 0x5f]
shl esi, 8
movzx ecx, byte [ecx + 0x7c9860]
xor esi, ecx
movzx ecx, byte [eax + 0x5e]
shl esi, 8
movzx ecx, byte [ecx + 0x7c9860]
xor esi, ecx
movzx ecx, byte [eax + 0x5d]
shl esi, 8
movzx ecx, byte [ecx + 0x7c9860]
xor esi, ecx
xor esi, dword [ebp + 8]
xor esi, dword [0x7c9e74]
mov dword [ebp + 8], esi
mov dword [eax + 0x60], esi
xor esi, edx
mov edx, esi
mov dword [eax + 0x64], esi
xor edx, edi
mov ecx, edx
mov dword [eax + 0x68], edx
xor ecx, ebx
mov dword [ebp - 0x18], ecx
mov dword [eax + 0x6c], ecx
movzx ecx, cl
movzx ebx, byte [ecx + 0x7c9860]
movzx ecx, byte [eax + 0x6f]
shl ebx, 8
movzx ecx, byte [ecx + 0x7c9860]
xor ebx, ecx
movzx ecx, byte [eax + 0x6e]
shl ebx, 8
movzx ecx, byte [ecx + 0x7c9860]
xor ebx, ecx
movzx ecx, byte [eax + 0x6d]
shl ebx, 8
movzx ecx, byte [ecx + 0x7c9860]
xor ebx, ecx
xor ebx, dword [ebp + 8]
xor ebx, dword [0x7c9e78]
mov edi, ebx
mov dword [eax + 0x70], ebx
xor edi, esi
mov esi, edi
mov dword [eax + 0x74], edi
xor esi, edx
mov edx, esi
mov dword [eax + 0x78], esi
xor edx, dword [ebp - 0x18]
movzx ecx, dl
mov dword [eax + 0x7c], edx
movzx ecx, byte [ecx + 0x7c9860]
shl ecx, 8
mov dword [ebp + 8], ecx
movzx ecx, byte [eax + 0x7f]
movzx ecx, byte [ecx + 0x7c9860]
xor dword [ebp + 8], ecx
shl dword [ebp + 8], 8
movzx ecx, byte [eax + 0x7e]
movzx ecx, byte [ecx + 0x7c9860]
xor dword [ebp + 8], ecx
movzx ecx, byte [eax + 0x7d]
shl dword [ebp + 8], 8
movzx ecx, byte [ecx + 0x7c9860]
xor dword [ebp + 8], ecx
mov ecx, dword [ebp + 8]
xor ecx, ebx
xor ecx, dword [0x7c9e7c]
mov ebx, ecx
mov dword [ebp + 8], ecx
xor ebx, edi
mov dword [eax + 0x80], ecx
mov edi, ebx
mov dword [eax + 0x84], ebx
xor edi, esi
mov ecx, edi
mov dword [eax + 0x88], edi
xor ecx, edx
mov dword [ebp - 0x18], ecx
mov dword [eax + 0x8c], ecx
movzx ecx, cl
movzx edx, byte [ecx + 0x7c9860]
movzx ecx, byte [eax + 0x8f]
shl edx, 8
movzx ecx, byte [ecx + 0x7c9860]
xor edx, ecx
movzx ecx, byte [eax + 0x8e]
shl edx, 8
movzx ecx, byte [ecx + 0x7c9860]
xor edx, ecx
movzx ecx, byte [eax + 0x8d]
shl edx, 8
movzx ecx, byte [ecx + 0x7c9860]
xor edx, ecx
xor edx, dword [ebp + 8]
xor edx, dword [0x7c9e80]
mov esi, edx
mov dword [ebp + 8], edx
xor esi, ebx
mov dword [eax + 0x90], edx
mov ebx, esi
mov dword [eax + 0x94], esi
xor ebx, edi
mov ecx, ebx
mov dword [eax + 0x98], ebx
xor ecx, dword [ebp - 0x18]
mov dword [ebp - 0x18], ecx
mov dword [eax + 0x9c], ecx
movzx ecx, cl
movzx edx, byte [ecx + 0x7c9860]
movzx ecx, byte [eax + 0x9f]
shl edx, 8
movzx ecx, byte [ecx + 0x7c9860]
xor edx, ecx
movzx ecx, byte [eax + 0x9e]
shl edx, 8
movzx ecx, byte [ecx + 0x7c9860]
xor edx, ecx
movzx ecx, byte [eax + 0x9d]
shl edx, 8
movzx ecx, byte [ecx + 0x7c9860]
xor edx, ecx
xor edx, dword [ebp + 8]
xor edx, dword [0x7c9e84]
mov dword [eax + 0xa0], edx
xor edx, esi
mov dword [eax + 0xa4], edx
xor edx, ebx
mov dword [eax + 0xa8], edx
xor edx, dword [ebp - 0x18]
mov dword [eax + 0xac], edx
pop edi
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret