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

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff0
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
sub esp, 0x5f8
mov eax, dword [0xa7000c]
xor eax, ebp
mov dword [ebp - 4], eax
push esi
push edi
mov eax, dword [0xa70ae0]
cdq
mov esi, eax
mov edi, edx
add esi, 7
adc edi, 0
mov eax, dword [0xa70ae4]
cdq
add eax, 0x2f67
adc edx, 0
push 0
push 0x2f67
push edx
push eax
call fcn.00fcf660
mov ecx, eax
mov eax, edx
mov dword [ebp - 0x3dc], eax
mov eax, dword [0xa70ae4]
cdq
add eax, 7
adc edx, 0
push edx
push eax
mov eax, dword [ebp - 0x3dc]
push eax
push ecx
call fcn.00fcf660
add esi, eax
adc edi, edx
add esi, 0x2f67
adc edi, 0
push edi
push esi
call fcn.00ded7a0
add esp, 8
mov dword [ebp - 0x1cc], eax
push 0xa5d514
lea ecx, [ebp - 0x188]
call fcn.00de4290
mov edx, dword [ebp - 0x178]
mov dword [ebp - 0x4dc], edx
cmp dword [ebp - 0x4dc], 0xc
jae 0xdf1115
mov eax, dword [ebp - 0x178]
mov dword [ebp - 0x4e0], eax
cmp dword [ebp - 0x4e0], 0
jne 0xdf10ec
mov dword [ebp - 0x248], 1
jmp 0xdf10f6
mov dword [ebp - 0x248], 0
movzx ecx, byte [ebp - 0x248]
test ecx, ecx
jne 0xdf1115
lea edx, [ebp - 0x188]
push edx
lea ecx, [ebp - 0x188]
call fcn.00de41c0
jmp 0xdf1122
push 0
lea ecx, [ebp - 0x188]
call fcn.00dea150
mov eax, dword [ebp - 0x178]
mov dword [ebp - 0x4e4], eax
cmp dword [ebp - 0x4e4], 0
jne 0xdf1143
mov dword [ebp - 0x28c], 1
jmp 0xdf114d
mov dword [ebp - 0x28c], 0
movzx ecx, byte [ebp - 0x28c]
test ecx, ecx
je 0xdf11c5
push 7
lea ecx, [ebp - 0x188]
call fcn.00eb9650
mov dword [ebp - 0x1dc], 0xa5d518
mov edx, dword [ebp - 0x1dc]
add edx, 1
mov dword [ebp - 0x4e8], edx
mov eax, dword [ebp - 0x1dc]
mov cl, byte [eax]
mov byte [ebp - 0x1c0], cl
add dword [ebp - 0x1dc], 1
cmp byte [ebp - 0x1c0], 0
jne 0xdf117e
mov edx, dword [ebp - 0x1dc]
sub edx, dword [ebp - 0x4e8]
mov dword [ebp - 0x4ec], edx
mov eax, dword [ebp - 0x4ec]
push eax
push 0xa5d518
lea ecx, [ebp - 0x188]
call fcn.00de6210
lea ecx, [ebp - 0x188]
call fcn.00de6030
cmp dword [ebx + 8], 0
jne 0xdf11dd
xor eax, eax
jmp 0xdf2976
mov ecx, dword [ebx + 8]
mov dword [ebp - 0x290], ecx
mov edx, dword [ebp - 0x290]
movzx eax, word [edx]
cdq
mov esi, eax
mov edi, edx
mov eax, dword [0xa70ae0]
cdq
mov ecx, edx
add eax, 7
adc ecx, 0
mov dword [ebp - 0x4f4], eax
mov eax, dword [0xa70ae4]
cdq
add eax, 0x2f67
adc edx, 0
push 0
push 0x2f67
push edx
push eax
mov dword [ebp - 0x2ac], ecx
call fcn.00fcf660
mov ecx, eax
mov eax, edx
add ecx, 0x5a4d
adc eax, 0
mov dword [ebp - 0x4f0], eax
mov eax, dword [0xa70ae4]
cdq
add eax, 7
adc edx, 0
push edx
push eax
mov eax, dword [ebp - 0x4f0]
push eax
push ecx
call fcn.00fcf660
mov ecx, dword [ebp - 0x4f4]
add ecx, eax
mov eax, dword [ebp - 0x2ac]
adc eax, edx
add ecx, 0x2f67
adc eax, 0
push eax
push ecx
call fcn.00ded7a0
add esp, 8
mov dword [ebp - 0x390], esi
mov dword [ebp - 0x38c], edi
mov dword [ebp - 0x398], eax
mov dword [ebp - 0x394], edx
mov edx, dword [ebp - 0x390]
cmp edx, dword [ebp - 0x398]
jne 0xdf12af
mov eax, dword [ebp - 0x38c]
cmp eax, dword [ebp - 0x394]
je 0xdf12b6
xor eax, eax
jmp 0xdf2976
mov ecx, dword [ebp - 0x290]
mov edx, dword [ebx + 8]
add edx, dword [ecx + 0x3c]
mov dword [ebp - 0x1d8], edx
xor eax, eax
mov dword [ebp - 0x3a0], 0x19ba9569
mov dword [ebp - 0x39c], eax
mov ecx, dword [ebp - 0x3a0]
mov edx, dword [ebp - 0x39c]
xor ecx, 0xf
xor edx, 0
mov dword [ebp - 0x3b8], ecx
mov dword [ebp - 0x3b4], edx
xor eax, eax
mov dword [ebp - 0x3a8], 0xf
mov dword [ebp - 0x3a4], eax
mov ecx, dword [0xa70ae8]
xor ecx, 0x2f67
mov edx, dword [0xa70aec]
xor edx, 0
push 0
push 2
push edx
push ecx
call fcn.00fcf660
mov dword [ebp - 0x3b0], eax
mov dword [ebp - 0x3ac], edx
xor eax, eax
mov dword [ebp - 0x3c0], 0x4586
mov dword [ebp - 0x3bc], eax
mov ecx, dword [ebp - 0x3a8]
mov edx, dword [ebp - 0x3a4]
mov eax, dword [ebp - 0x3ac]
add ecx, dword [ebp - 0x3b0]
adc edx, eax
add ecx, 1
adc edx, 0
mov dword [ebp - 0x3d0], ecx
mov dword [ebp - 0x3cc], edx
mov ecx, dword [ebp - 0x3b8]
mov edx, dword [ebp - 0x3b4]
mov eax, dword [ebp - 0x3bc]
sub ecx, dword [ebp - 0x3c0]
sbb edx, eax
mov dword [ebp - 0x3c8], ecx
mov dword [ebp - 0x3c4], edx
mov ecx, dword [ebp - 0x3c8]
mov edx, dword [ebp - 0x3c4]
mov eax, dword [ebp - 0x3d0]
mov esi, dword [ebp - 0x3cc]
push esi
push eax
push edx
push ecx
call fcn.00fcf6a0
mov dword [ebp - 0x3d8], eax
mov dword [ebp - 0x3d4], edx
mov ecx, dword [ebp - 0x1d8]
mov edx, dword [ecx]
xor eax, eax
mov ecx, dword [ebp - 0x3d8]
mov esi, dword [ebp - 0x3d4]
mov dword [ebp - 0x4c0], edx
mov dword [ebp - 0x4bc], eax
mov dword [ebp - 0x3e8], ecx
mov dword [ebp - 0x3e4], esi
mov edx, dword [ebp - 0x4c0]
cmp edx, dword [ebp - 0x3e8]
jne 0xdf1411
mov eax, dword [ebp - 0x4bc]
cmp eax, dword [ebp - 0x3e4]
je 0xdf1418
xor eax, eax
jmp 0xdf2976
mov ecx, dword [ebp - 0x1d8]
movzx eax, word [ecx + 0x18]
cdq
mov esi, eax
mov edi, edx
mov eax, dword [0xa70ae0]
cdq
mov ecx, edx
add eax, 7
adc ecx, 0
mov dword [ebp - 0x2b4], eax
mov eax, dword [0xa70ae4]
cdq
add eax, 0x2f67
adc edx, 0
push 0
push 0x2f67
push edx
push eax
mov dword [ebp - 0x2b8], ecx
call fcn.00fcf660
mov ecx, eax
mov eax, edx
add ecx, 0x20b
adc eax, 0
mov dword [ebp - 0x2b0], eax
mov eax, dword [0xa70ae4]
cdq
add eax, 7
adc edx, 0
push edx
push eax
mov eax, dword [ebp - 0x2b0]
push eax
push ecx
call fcn.00fcf660
mov ecx, dword [ebp - 0x2b4]
add ecx, eax
mov eax, dword [ebp - 0x2b8]
adc eax, edx
add ecx, 0x2f67
adc eax, 0
push eax
push ecx
call fcn.00ded7a0
add esp, 8
mov dword [ebp - 0x3f0], esi
mov dword [ebp - 0x3ec], edi
mov dword [ebp - 0x3f8], eax
mov dword [ebp - 0x3f4], edx
mov edx, dword [ebp - 0x3f0]
cmp edx, dword [ebp - 0x3f8]
jne 0xdf151d
mov eax, dword [ebp - 0x3ec]
cmp eax, dword [ebp - 0x3f4]
jne 0xdf151d
mov ecx, 8
imul edx, ecx, 0
mov eax, dword [ebp - 0x1d8]
mov ecx, dword [eax + edx + 0x88]
add ecx, dword [ebx + 8]
mov dword [ebp - 0x1a8], ecx
mov edx, 8
imul eax, edx, 0
mov ecx, dword [ebp - 0x1d8]
mov edx, dword [ecx + eax + 0x8c]
mov dword [ebp - 0x29c], edx
jmp 0xdf1550
mov eax, 8
imul ecx, eax, 0
mov edx, dword [ebp - 0x1d8]
mov eax, dword [edx + ecx + 0x78]
add eax, dword [ebx + 8]
mov dword [ebp - 0x1a8], eax
mov ecx, 8
imul edx, ecx, 0
mov eax, dword [ebp - 0x1d8]
mov ecx, dword [eax + edx + 0x7c]
mov dword [ebp - 0x29c], ecx
mov edx, dword [ebp - 0x1a8]
mov eax, dword [ebx + 8]
add eax, dword [edx + 0x24]
mov dword [ebp - 0x2c0], eax
mov ecx, dword [ebp - 0x1a8]
mov edx, dword [ebx + 8]
add edx, dword [ecx + 0x20]
mov dword [ebp - 0x2bc], edx
mov eax, dword [ebp - 0x1a8]
mov ecx, dword [ebx + 8]
add ecx, dword [eax + 0x1c]
mov dword [ebp - 0x2c8], ecx
mov dword [ebp - 0x1c4], 0
jmp 0xdf15a1
mov edx, dword [ebp - 0x1c4]
add edx, 1
mov dword [ebp - 0x1c4], edx
mov eax, dword [ebp - 0x1a8]
mov ecx, dword [ebp - 0x1c4]
cmp ecx, dword [eax + 0x14]
jae 0xdf2970
xor edx, edx
mov dword [ebp - 0x400], 0x5f05e68f
mov dword [ebp - 0x3fc], edx
mov eax, dword [ebp - 0x400]
mov ecx, dword [ebp - 0x3fc]
xor eax, 0xf
xor ecx, 0
mov dword [ebp - 0x418], eax
mov dword [ebp - 0x414], ecx
xor edx, edx
mov dword [ebp - 0x408], 0xf
mov dword [ebp - 0x404], edx
mov eax, dword [0xa70ae8]
xor eax, 0x2f67
mov ecx, dword [0xa70aec]
xor ecx, 0
push 0
push 2
push ecx
push eax
call fcn.00fcf660
mov dword [ebp - 0x410], eax
mov dword [ebp - 0x40c], edx
xor edx, edx
mov dword [ebp - 0x420], 0x4586
mov dword [ebp - 0x41c], edx
mov eax, dword [ebp - 0x408]
mov ecx, dword [ebp - 0x404]
mov edx, dword [ebp - 0x40c]
add eax, dword [ebp - 0x410]
adc ecx, edx
add eax, 1
adc ecx, 0
mov dword [ebp - 0x430], eax
mov dword [ebp - 0x42c], ecx
mov eax, dword [ebp - 0x418]
mov ecx, dword [ebp - 0x414]
mov edx, dword [ebp - 0x41c]
sub eax, dword [ebp - 0x420]
sbb ecx, edx
mov dword [ebp - 0x428], eax
mov dword [ebp - 0x424], ecx
mov eax, dword [ebp - 0x428]
mov ecx, dword [ebp - 0x424]
mov edx, dword [ebp - 0x430]
mov esi, dword [ebp - 0x42c]
push esi
push edx
push ecx
push eax
call fcn.00fcf6a0
mov dword [ebp - 0x438], eax
mov dword [ebp - 0x434], edx
mov eax, dword [ebp - 0x438]
mov ecx, dword [ebp - 0x434]
mov dword [ebp - 0x55c], ecx
mov word [ebp - 0x1a4], ax
mov dword [ebp - 0x294], 0
cmp dword [ebx + 0xc], 0xffff
ja 0xdf16ef
mov dx, word [ebp - 0x1c4]
mov word [ebp - 0x1a4], dx
jmp 0xdf1741
cmp dword [ebx + 0xc], 0xffff
jbe 0xdf173a
mov eax, dword [ebp - 0x1a8]
mov ecx, dword [ebp - 0x1c4]
cmp ecx, dword [eax + 0x18]
jae 0xdf173a
mov edx, dword [ebp - 0x1c4]
mov eax, dword [ebp - 0x2bc]
mov ecx, dword [ebx + 8]
add ecx, dword [eax + edx*4]
mov dword [ebp - 0x294], ecx
mov edx, dword [ebp - 0x1c4]
mov eax, dword [ebp - 0x2c0]
mov cx, word [eax + edx*2]
mov word [ebp - 0x1a4], cx
jmp 0xdf1741
xor eax, eax
jmp 0xdf2976
cmp dword [ebx + 0xc], 0xffff
ja 0xdf1766
movzx edx, word [ebx + 0xc]
movzx eax, word [ebp - 0x1a4]
mov ecx, dword [ebp - 0x1a8]
add eax, dword [ecx + 0x10]
cmp edx, eax
je 0xdf1a8a
xor edx, edx
mov dword [ebp - 0x440], 0x5f05e68f
mov dword [ebp - 0x43c], edx
mov eax, dword [ebp - 0x440]
mov ecx, dword [ebp - 0x43c]
xor eax, 0xf
xor ecx, 0
mov dword [ebp - 0x458], eax
mov dword [ebp - 0x454], ecx
xor edx, edx
mov dword [ebp - 0x448], 0xf
mov dword [ebp - 0x444], edx
mov eax, dword [0xa70ae8]
xor eax, 0x2f67
mov ecx, dword [0xa70aec]
xor ecx, 0
push 0
push 2
push ecx
push eax
call fcn.00fcf660
mov dword [ebp - 0x450], eax
mov dword [ebp - 0x44c], edx
xor edx, edx
mov dword [ebp - 0x460], 0x4586
mov dword [ebp - 0x45c], edx
mov eax, dword [ebp - 0x448]
mov ecx, dword [ebp - 0x444]
mov edx, dword [ebp - 0x44c]
add eax, dword [ebp - 0x450]
adc ecx, edx
add eax, 1
adc ecx, 0
mov dword [ebp - 0x470], eax
mov dword [ebp - 0x46c], ecx
mov eax, dword [ebp - 0x458]
mov ecx, dword [ebp - 0x454]
mov edx, dword [ebp - 0x45c]
sub eax, dword [ebp - 0x460]
sbb ecx, edx
mov dword [ebp - 0x468], eax
mov dword [ebp - 0x464], ecx
mov eax, dword [ebp - 0x468]
mov ecx, dword [ebp - 0x464]
mov edx, dword [ebp - 0x470]
mov esi, dword [ebp - 0x46c]
push esi
push edx
push ecx
push eax
call fcn.00fcf6a0
mov dword [ebp - 0x478], eax
mov dword [ebp - 0x474], edx
mov eax, dword [ebx + 0xc]
xor ecx, ecx
mov edx, dword [ebp - 0x478]
mov esi, dword [ebp - 0x474]
mov dword [ebp - 0x480], eax
mov dword [ebp - 0x47c], ecx
mov dword [ebp - 0x488], edx
mov dword [ebp - 0x484], esi
mov eax, dword [ebp - 0x47c]
cmp eax, dword [ebp - 0x484]
jb 0xdf296b
ja 0xdf18b2
mov ecx, dword [ebp - 0x480]
cmp ecx, dword [ebp - 0x488]
jbe 0xdf296b
mov edx, dword [ebx + 0xc]
mov dword [ebp - 0x1f8], edx
mov eax, dword [ebp - 0x294]
mov dword [ebp - 0x1f4], eax
mov ecx, dword [ebp - 0x1f4]
mov dl, byte [ecx]
mov byte [ebp - 0x1cd], dl
mov eax, dword [ebp - 0x1f8]
cmp dl, byte [eax]
jne 0xdf1925
cmp byte [ebp - 0x1cd], 0
je 0xdf1919
mov ecx, dword [ebp - 0x1f4]
mov dl, byte [ecx + 1]
mov byte [ebp - 0x1ce], dl
mov eax, dword [ebp - 0x1f8]
cmp dl, byte [eax + 1]
jne 0xdf1925
add dword [ebp - 0x1f4], 2
add dword [ebp - 0x1f8], 2
cmp byte [ebp - 0x1ce], 0
jne 0xdf18c7
mov dword [ebp - 0x298], 0
jmp 0xdf1930
sbb ecx, ecx
or ecx, 1
mov dword [ebp - 0x298], ecx
mov edx, dword [ebp - 0x298]
mov dword [ebp - 0x2c4], edx
xor eax, eax
mov dword [ebp - 0x490], 0x4589
mov dword [ebp - 0x48c], eax
mov ecx, dword [ebp - 0x490]
mov edx, dword [ebp - 0x48c]
xor ecx, 0xf
xor edx, 0
mov dword [ebp - 0x4a8], ecx
mov dword [ebp - 0x4a4], edx
xor eax, eax
mov dword [ebp - 0x498], 0xf
mov dword [ebp - 0x494], eax
mov ecx, dword [0xa70ae8]
xor ecx, 0x2f67
mov edx, dword [0xa70aec]
xor edx, 0
push 0
push 2
push edx
push ecx
call fcn.00fcf660
mov dword [ebp - 0x4a0], eax
mov dword [ebp - 0x49c], edx
xor eax, eax
mov dword [ebp - 0x4b0], 0x4586
mov dword [ebp - 0x4ac], eax
mov ecx, dword [ebp - 0x498]
mov edx, dword [ebp - 0x494]
mov eax, dword [ebp - 0x49c]
add ecx, dword [ebp - 0x4a0]
adc edx, eax
add ecx, 1
adc edx, 0
mov dword [ebp - 0x500], ecx
mov dword [ebp - 0x4fc], edx
mov ecx, dword [ebp - 0x4a8]
mov edx, dword [ebp - 0x4a4]
mov eax, dword [ebp - 0x4ac]
sub ecx, dword [ebp - 0x4b0]
sbb edx, eax
mov dword [ebp - 0x4b8], ecx
mov dword [ebp - 0x4b4], edx
mov ecx, dword [ebp - 0x4b8]
mov edx, dword [ebp - 0x4b4]
mov eax, dword [ebp - 0x500]
mov esi, dword [ebp - 0x4fc]
push esi
push eax
push edx
push ecx
call fcn.00fcf6a0
mov dword [ebp - 0x4c8], eax
mov dword [ebp - 0x4c4], edx
mov eax, dword [ebp - 0x2c4]
cdq
mov ecx, dword [ebp - 0x4c8]
mov esi, dword [ebp - 0x4c4]
mov dword [ebp - 0x4d0], eax
mov dword [ebp - 0x4cc], edx
mov dword [ebp - 0x4d8], ecx
mov dword [ebp - 0x4d4], esi
mov edx, dword [ebp - 0x4d0]
cmp edx, dword [ebp - 0x4d8]
jne 0xdf296b
mov eax, dword [ebp - 0x4cc]
cmp eax, dword [ebp - 0x4d4]
jne 0xdf296b
movzx ecx, word [ebp - 0x1a4]
mov edx, dword [ebp - 0x2c8]
mov eax, dword [ebx + 8]
add eax, dword [edx + ecx*4]
mov dword [ebp - 0x1cc], eax
mov ecx, dword [ebp - 0x1cc]
cmp ecx, dword [ebp - 0x1a8]
jb 0xdf2969
mov edx, dword [ebp - 0x1a8]
add edx, dword [ebp - 0x29c]
cmp dword [ebp - 0x1cc], edx
ja 0xdf2969
mov dword [ebp - 0x1e8], 0
mov dword [ebp - 0x1c8], 0
push 0x100
push 0
lea eax, [ebp - 0x108]
push eax
call fcn.00fa9a00
add esp, 0xc
mov dword [ebp - 0x1f0], 0
mov ecx, dword [ebp - 0x1cc]
push ecx
call fcn.00fbac22
add esp, 4
mov dword [ebp - 0x1e8], eax
xor edx, edx
mov byte [ebp - 0x1d0], dl
xor eax, eax
mov byte [ebp - 0x1d1], al
xor ecx, ecx
mov byte [ebp - 0x1d2], cl
mov dl, byte [ebp - 0x1d0]
mov byte [ebp - 0x1fc], dl
mov al, byte [ebp - 0x1d1]
mov byte [ebp - 0x200], al
mov cl, byte [ebp - 0x1d2]
mov byte [ebp - 0x204], cl
mov edx, 0xce5c8d4f
mov dword [ebp - 0x120], 0xabd49877
mov dword [ebp - 0x11c], edx
mov eax, 0xcce41422
mov dword [ebp - 0x118], 0xd15ce80e
mov dword [ebp - 0x114], eax
mov ecx, 0xce5c8d4f
mov dword [ebp - 0x520], 0xabd49859
mov dword [ebp - 0x51c], ecx
mov edx, 0xcce41422
mov dword [ebp - 0x518], 0xd15ce80e
mov dword [ebp - 0x514], edx
xor eax, eax
mov byte [ebp - 0x1ba], al
mov cl, byte [ebp - 0x1ba]
mov byte [ebp - 0x208], cl
movaps xmm0, xmmword [ebp - 0x520]
movaps xmmword [ebp - 0x580], xmm0
movaps xmm0, xmmword [ebp - 0x120]
movaps xmmword [ebp - 0x570], xmm0
movaps xmm0, xmmword [ebp - 0x570]
pxor xmm0, xmmword [ebp - 0x580]
movaps xmmword [ebp - 0x590], xmm0
movaps xmm0, xmmword [ebp - 0x590]
movaps xmmword [ebp - 0x120], xmm0
lea edx, [ebp - 0x120]
push edx
mov eax, dword [ebp - 0x1e8]
push eax
call fcn.00fa93f0
add esp, 8
mov dword [ebp - 0x1c8], eax
mov ecx, dword [ebp - 0x1c8]
mov byte [ecx], 0
mov edx, dword [ebp - 0x1c8]
add edx, 1
mov dword [ebp - 0x1c8], edx
mov eax, dword fs:[0x2c]
mov ecx, dword [eax]
mov edx, dword [0xa789bc]
cmp edx, dword [ecx + 4]
jle 0xdf1c7e
push 0xa789bc
call fcn.00fa718b
add esp, 4
cmp dword [0xa789bc], 0xffffffff
jne 0xdf1c7e
mov ecx, 0xa789c0
call fcn.00dec1a0
push 0xa441a0
call fcn.00fa7004
add esp, 4
push 0xa789bc
call fcn.00fa7141
add esp, 4
mov dword [ebp - 0x2a0], 0xa789c0
mov eax, dword [ebp - 0x2a0]
mov ecx, dword [ebp - 0x2a0]
mov edx, dword [eax + 4]
sub edx, dword [ecx]
sar edx, 3
cmp edx, 0x123
jae 0xdf1d3d
mov byte [ebp - 0x1d3], 1
mov dword [ebp - 0x2a4], 0xa789c0
mov eax, dword [ebp - 0x2a4]
mov ecx, dword [ebp - 0x2a4]
mov edx, dword [eax + 4]
sub edx, dword [ecx]
sar edx, 3
xor edx, 0xaac
mov dword [ebp - 0x2cc], edx
lea eax, [ebp - 0x1d3]
mov dword [ebp - 0x2d0], eax
lea ecx, [ebp - 0x2cc]
mov dword [ebp - 0x2d4], ecx
mov dl, byte [ebp - 0x209]
mov byte [ebp - 0x1d4], dl
mov al, byte [ebp - 0x1d4]
mov byte [ebp - 0x1a9], al
mov ecx, dword [ebp - 0x2d0]
push ecx
mov edx, dword [ebp - 0x2d4]
push edx
movzx eax, byte [ebp - 0x1a9]
push eax
lea ecx, [ebp - 0x548]
call fcn.00ec8490
lea ecx, [ebp - 0x548]
push ecx
mov ecx, 0xa789c0
call fcn.00eb8c70
jmp 0xdf1d72
mov dword [ebp - 0x240], 0xa789c0
mov edx, dword [ebp - 0x240]
mov dword [ebp - 0x2dc], edx
mov eax, dword [ebp - 0x240]
add eax, 4
mov dword [ebp - 0x2d8], eax
mov ecx, dword [ebp - 0x2d8]
mov edx, dword [ebp - 0x2dc]
mov eax, dword [edx]
mov dword [ecx], eax
mov ecx, dword [ebp - 0x1e8]
push ecx
lea edx, [ebp - 0x108]
push edx
call dword [0xa45050]
mov eax, dword fs:[0x2c]
mov ecx, dword [eax]
mov edx, dword [0xa789bc]
cmp edx, dword [ecx + 4]
jle 0xdf1dd6
push 0xa789bc
call fcn.00fa718b
add esp, 4
cmp dword [0xa789bc], 0xffffffff
jne 0xdf1dd6
mov ecx, 0xa789c0
call fcn.00dec1a0
push 0xa441a0
call fcn.00fa7004
add esp, 4
push 0xa789bc
call fcn.00fa7141
add esp, 4
mov dword [ebp - 0x244], 0xa789c0
mov eax, dword [ebp - 0x244]
mov ecx, dword [ebp - 0x244]
mov edx, dword [eax + 4]
sub edx, dword [ecx]
sar edx, 3
cmp edx, 0x123
jae 0xdf1e95
mov byte [ebp - 0x1aa], 1
mov dword [ebp - 0x278], 0xa789c0
mov eax, dword [ebp - 0x278]
mov ecx, dword [ebp - 0x278]
mov edx, dword [eax + 4]
sub edx, dword [ecx]
sar edx, 3
xor edx, 0xaac
mov dword [ebp - 0x2e0], edx
lea eax, [ebp - 0x1aa]
mov dword [ebp - 0x2e4], eax
lea ecx, [ebp - 0x2e0]
mov dword [ebp - 0x2e8], ecx
mov dl, byte [ebp - 0x20a]
mov byte [ebp - 0x1ab], dl
mov al, byte [ebp - 0x1ab]
mov byte [ebp - 0x1ac], al
mov ecx, dword [ebp - 0x2e4]
push ecx
mov edx, dword [ebp - 0x2e8]
push edx
movzx eax, byte [ebp - 0x1ac]
push eax
lea ecx, [ebp - 0x550]
call fcn.00ec8490
lea ecx, [ebp - 0x550]
push ecx
mov ecx, 0xa789c0
call fcn.00eb8c70
jmp 0xdf1eca
mov dword [ebp - 0x24c], 0xa789c0
mov edx, dword [ebp - 0x24c]
mov dword [ebp - 0x2f0], edx
mov eax, dword [ebp - 0x24c]
add eax, 4
mov dword [ebp - 0x2ec], eax
mov ecx, dword [ebp - 0x2ec]
mov edx, dword [ebp - 0x2f0]
mov eax, dword [edx]
mov dword [ecx], eax
xor ecx, ecx
mov byte [ebp - 0x1ad], cl
xor edx, edx
mov byte [ebp - 0x1ae], dl
xor eax, eax
mov byte [ebp - 0x1af], al
mov cl, byte [ebp - 0x1ad]
mov byte [ebp - 0x210], cl
mov dl, byte [ebp - 0x1ae]
mov byte [ebp - 0x238], dl
mov al, byte [ebp - 0x1af]
mov byte [ebp - 0x214], al
mov ecx, 0xce5c8d4f
mov dword [ebp - 0x130], 0xc7b8fc77
mov dword [ebp - 0x12c], ecx
mov edx, 0xcce41422
mov dword [ebp - 0x128], 0xd15ce80e
mov dword [ebp - 0x124], edx
mov eax, 0xce5c8d4f
mov dword [ebp - 0x530], 0xabd49859
mov dword [ebp - 0x52c], eax
mov ecx, 0xcce41422
mov dword [ebp - 0x528], 0xd15ce80e
mov dword [ebp - 0x524], ecx
xor edx, edx
mov byte [ebp - 0x1b0], dl
mov al, byte [ebp - 0x1b0]
mov byte [ebp - 0x218], al
movaps xmm0, xmmword [ebp - 0x530]
movaps xmmword [ebp - 0x5b0], xmm0
movaps xmm0, xmmword [ebp - 0x130]
movaps xmmword [ebp - 0x5a0], xmm0
movaps xmm0, xmmword [ebp - 0x5a0]
pxor xmm0, xmmword [ebp - 0x5b0]
movaps xmmword [ebp - 0x5c0], xmm0
movaps xmm0, xmmword [ebp - 0x5c0]
movaps xmmword [ebp - 0x130], xmm0
lea ecx, [ebp - 0x130]
push ecx
lea edx, [ebp - 0x108]
push edx
call dword [0xa45028]
push 0xa5d514
lea ecx, [ebp - 0x1a0]
call fcn.00de4290
mov eax, dword [ebp - 0x190]
mov dword [ebp - 0x2f4], eax
cmp dword [ebp - 0x2f4], 0xc
jae 0xdf2031
mov ecx, dword [ebp - 0x190]
mov dword [ebp - 0x2f8], ecx
cmp dword [ebp - 0x2f8], 0
jne 0xdf2008
mov dword [ebp - 0x250], 1
jmp 0xdf2012
mov dword [ebp - 0x250], 0
movzx edx, byte [ebp - 0x250]
test edx, edx
jne 0xdf2031
lea eax, [ebp - 0x1a0]
push eax
lea ecx, [ebp - 0x1a0]
call fcn.00de41c0
jmp 0xdf203e
push 0
lea ecx, [ebp - 0x1a0]
call fcn.00dea150
mov ecx, dword [ebp - 0x190]
mov dword [ebp - 0x2fc], ecx
cmp dword [ebp - 0x2fc], 0
jne 0xdf205f
mov dword [ebp - 0x254], 1
jmp 0xdf2069
mov dword [ebp - 0x254], 0
movzx edx, byte [ebp - 0x254]
test edx, edx
je 0xdf20e1
push 7
lea ecx, [ebp - 0x1a0]
call fcn.00eb9650
mov dword [ebp - 0x1e0], 0xa5d518
mov eax, dword [ebp - 0x1e0]
add eax, 1
mov dword [ebp - 0x300], eax
mov ecx, dword [ebp - 0x1e0]
mov dl, byte [ecx]
mov byte [ebp - 0x1b1], dl
add dword [ebp - 0x1e0], 1
cmp byte [ebp - 0x1b1], 0
jne 0xdf209a
mov eax, dword [ebp - 0x1e0]
sub eax, dword [ebp - 0x300]
mov dword [ebp - 0x304], eax
mov ecx, dword [ebp - 0x304]
push ecx
push 0xa5d518
lea ecx, [ebp - 0x1a0]
call fcn.00de6210
lea ecx, [ebp - 0x1a0]
call fcn.00de6030
lea edx, [ebp - 0x108]
push edx
call dword [0xa4502c]
mov dword [ebp - 0x1f0], eax
mov eax, dword fs:[0x2c]
mov ecx, dword [eax]
mov edx, dword [0xa789bc]
cmp edx, dword [ecx + 4]
jle 0xdf214f
push 0xa789bc
call fcn.00fa718b
add esp, 4
cmp dword [0xa789bc], 0xffffffff
jne 0xdf214f
mov ecx, 0xa789c0
call fcn.00dec1a0
push 0xa441a0
call fcn.00fa7004
add esp, 4
push 0xa789bc
call fcn.00fa7141
add esp, 4
mov dword [ebp - 0x258], 0xa789c0
mov eax, dword [ebp - 0x258]
mov ecx, dword [ebp - 0x258]
mov edx, dword [eax + 4]
sub edx, dword [ecx]
sar edx, 3
cmp edx, 0x123
jae 0xdf220e
mov byte [ebp - 0x1b2], 1
mov dword [ebp - 0x25c], 0xa789c0
mov eax, dword [ebp - 0x25c]
mov ecx, dword [ebp - 0x25c]
mov edx, dword [eax + 4]
sub edx, dword [ecx]
sar edx, 3
xor edx, 0xaac
mov dword [ebp - 0x308], edx
lea eax, [ebp - 0x1b2]
mov dword [ebp - 0x30c], eax
lea ecx, [ebp - 0x308]
mov dword [ebp - 0x310], ecx
mov dl, byte [ebp - 0x21a]
mov byte [ebp - 0x1b3], dl
mov al, byte [ebp - 0x1b3]
mov byte [ebp - 0x1b4], al
mov ecx, dword [ebp - 0x30c]
push ecx
mov edx, dword [ebp - 0x310]
push edx
movzx eax, byte [ebp - 0x1b4]
push eax
lea ecx, [ebp - 0x558]
call fcn.00ec8490
lea ecx, [ebp - 0x558]
push ecx
mov ecx, 0xa789c0
call fcn.00eb8c70
jmp 0xdf2243
mov dword [ebp - 0x260], 0xa789c0
mov edx, dword [ebp - 0x260]
mov dword [ebp - 0x318], edx
mov eax, dword [ebp - 0x260]
add eax, 4
mov dword [ebp - 0x314], eax
mov ecx, dword [ebp - 0x314]
mov edx, dword [ebp - 0x318]
mov eax, dword [edx]
mov dword [ecx], eax
cmp dword [ebp - 0x1f0], 0
jne 0xdf2262
mov ecx, dword [ebp - 0x1e8]
push ecx
call fcn.00fb546c
add esp, 4
xor eax, eax
jmp 0xdf2976
mov edx, dword fs:[0x2c]
mov eax, dword [edx]
mov ecx, dword [0xa789bc]
cmp ecx, dword [eax + 4]
jle 0xdf22b3
push 0xa789bc
call fcn.00fa718b
add esp, 4
cmp dword [0xa789bc], 0xffffffff
jne 0xdf22b3
mov ecx, 0xa789c0
call fcn.00dec1a0
push 0xa441a0
call fcn.00fa7004
add esp, 4
push 0xa789bc
call fcn.00fa7141
add esp, 4
mov dword [ebp - 0x264], 0xa789c0
mov edx, dword [ebp - 0x264]
mov eax, dword [ebp - 0x264]
mov ecx, dword [edx + 4]
sub ecx, dword [eax]
sar ecx, 3
cmp ecx, 0x123
jae 0xdf239f
mov byte [ebp - 0x1cf], 1
mov dword [ebp - 0x268], 0xa789c0
mov edx, dword [ebp - 0x268]
mov eax, dword [ebp - 0x268]
mov ecx, dword [edx + 4]
sub ecx, dword [eax]
sar ecx, 3
xor ecx, 0xaac
mov dword [ebp - 0x31c], ecx
lea edx, [ebp - 0x1cf]
mov dword [ebp - 0x320], edx
lea eax, [ebp - 0x31c]
mov dword [ebp - 0x32c], eax
mov cl, byte [ebp - 0x21b]
mov byte [ebp - 0x1b5], cl
mov dl, byte [ebp - 0x1b5]
mov byte [ebp - 0x21c], dl
mov eax, dword [ebp - 0x320]
mov dword [ebp - 0x324], eax
mov cl, byte [ebp - 0x21d]
mov byte [ebp - 0x1b6], cl
mov edx, dword [ebp - 0x324]
push edx
movzx eax, byte [ebp - 0x1b6]
push eax
lea ecx, [ebp - 0x510]
call fcn.00ecd740
lea ecx, [ebp - 0x50c]
mov dword [ebp - 0x328], ecx
mov edx, dword [ebp - 0x328]
mov eax, dword [ebp - 0x32c]
mov ecx, dword [eax]
mov dword [edx], ecx
lea edx, [ebp - 0x510]
push edx
mov ecx, 0xa789c0
call fcn.00eb8c70
jmp 0xdf23d4
mov dword [ebp - 0x26c], 0xa789c0
mov eax, dword [ebp - 0x26c]
mov dword [ebp - 0x334], eax
mov ecx, dword [ebp - 0x26c]
add ecx, 4
mov dword [ebp - 0x330], ecx
mov edx, dword [ebp - 0x330]
mov eax, dword [ebp - 0x334]
mov ecx, dword [eax]
mov dword [edx], ecx
push 0xa5d514
lea ecx, [ebp - 0x158]
call fcn.00de4290
mov edx, dword [ebp - 0x148]
mov dword [ebp - 0x338], edx
cmp dword [ebp - 0x338], 0xc
jae 0xdf2443
mov eax, dword [ebp - 0x148]
mov dword [ebp - 0x33c], eax
cmp dword [ebp - 0x33c], 0
jne 0xdf241a
mov dword [ebp - 0x270], 1
jmp 0xdf2424
mov dword [ebp - 0x270], 0
movzx ecx, byte [ebp - 0x270]
test ecx, ecx
jne 0xdf2443
lea edx, [ebp - 0x158]
push edx
lea ecx, [ebp - 0x158]
call fcn.00de41c0
jmp 0xdf2450
push 0
lea ecx, [ebp - 0x158]
call fcn.00dea150
mov eax, dword [ebp - 0x148]
mov dword [ebp - 0x340], eax
cmp dword [ebp - 0x340], 0
jne 0xdf2471
mov dword [ebp - 0x274], 1
jmp 0xdf247b
mov dword [ebp - 0x274], 0
movzx ecx, byte [ebp - 0x274]
test ecx, ecx
je 0xdf24f3
push 7
lea ecx, [ebp - 0x158]
call fcn.00eb9650
mov dword [ebp - 0x1ec], 0xa5d518
mov edx, dword [ebp - 0x1ec]
add edx, 1
mov dword [ebp - 0x344], edx
mov eax, dword [ebp - 0x1ec]
mov cl, byte [eax]
mov byte [ebp - 0x1b7], cl
add dword [ebp - 0x1ec], 1
cmp byte [ebp - 0x1b7], 0
jne 0xdf24ac
mov edx, dword [ebp - 0x1ec]
sub edx, dword [ebp - 0x344]
mov dword [ebp - 0x348], edx
mov eax, dword [ebp - 0x348]
push eax
push 0xa5d518
lea ecx, [ebp - 0x158]
call fcn.00de6210
lea ecx, [ebp - 0x158]
call fcn.00de6030
xor ecx, ecx
mov byte [ebp - 0x1b8], cl
xor edx, edx
mov byte [ebp - 0x1b9], dl
xor eax, eax
mov byte [ebp - 0x1bf], al
mov cl, byte [ebp - 0x1b8]
mov byte [ebp - 0x224], cl
mov dl, byte [ebp - 0x1b9]
mov byte [ebp - 0x228], dl
mov al, byte [ebp - 0x1bf]
mov byte [ebp - 0x22c], al
mov ecx, 0xce5c8d4f
mov dword [ebp - 0x140], 0xabd4987a
mov dword [ebp - 0x13c], ecx
mov edx, 0xcce41422
mov dword [ebp - 0x138], 0xd15ce80e
mov dword [ebp - 0x134], edx
mov eax, 0xce5c8d4f
mov dword [ebp - 0x540], 0xabd49859
mov dword [ebp - 0x53c], eax
mov ecx, 0xcce41422
mov dword [ebp - 0x538], 0xd15ce80e
mov dword [ebp - 0x534], ecx
xor edx, edx
mov byte [ebp - 0x1bb], dl
mov al, byte [ebp - 0x1bb]
mov byte [ebp - 0x230], al
movaps xmm0, xmmword [ebp - 0x540]
movaps xmmword [ebp - 0x5e0], xmm0
movaps xmm0, xmmword [ebp - 0x140]
movaps xmmword [ebp - 0x5d0], xmm0
movaps xmm0, xmmword [ebp - 0x5d0]
pxor xmm0, xmmword [ebp - 0x5e0]
movaps xmmword [ebp - 0x5f0], xmm0
movaps xmm0, xmmword [ebp - 0x5f0]
movaps xmmword [ebp - 0x140], xmm0
lea ecx, [ebp - 0x140]
push ecx
mov edx, dword [ebp - 0x1c8]
push edx
call fcn.00fa93f0
add esp, 8
test eax, eax
jne 0xdf261d
mov eax, dword [ebp - 0x1c8]
push eax
mov ecx, dword [ebp - 0x1f0]
push ecx
call fcn.00df1010
add esp, 8
mov dword [ebp - 0x1cc], eax
jmp 0xdf2830
mov edx, dword fs:[0x2c]
mov eax, dword [edx]
mov ecx, dword [0xa789bc]
cmp ecx, dword [eax + 4]
jle 0xdf266e
push 0xa789bc
call fcn.00fa718b
add esp, 4
cmp dword [0xa789bc], 0xffffffff
jne 0xdf266e
mov ecx, 0xa789c0
call fcn.00dec1a0
push 0xa441a0
call fcn.00fa7004
add esp, 4
push 0xa789bc
call fcn.00fa7141
add esp, 4
mov dword [ebp - 0x2a8], 0xa789c0
mov edx, dword [ebp - 0x2a8]
mov eax, dword [ebp - 0x2a8]
mov ecx, dword [edx + 4]
sub ecx, dword [eax]
sar ecx, 3
cmp ecx, 0x123
jae 0xdf275c
mov byte [ebp - 0x1bc], 1
mov dword [ebp - 0x27c], 0xa789c0
mov edx, dword [ebp - 0x27c]
mov eax, dword [ebp - 0x27c]
mov ecx, dword [edx + 4]
sub ecx, dword [eax]
sar ecx, 3
xor ecx, 0xaac
mov dword [ebp - 0x34c], ecx
lea edx, [ebp - 0x1bc]
mov dword [ebp - 0x350], edx
lea eax, [ebp - 0x34c]
mov dword [ebp - 0x360], eax
mov cl, byte [ebp - 0x231]
mov byte [ebp - 0x1bd], cl
mov dl, byte [ebp - 0x1bd]
mov byte [ebp - 0x219], dl
mov eax, dword [ebp - 0x350]
mov dword [ebp - 0x358], eax
mov cl, byte [ebp - 0x239]
mov byte [ebp - 0x23a], cl
lea edx, [ebp - 0x508]
mov dword [ebp - 0x354], edx
mov eax, dword [ebp - 0x354]
mov ecx, dword [ebp - 0x358]
mov dl, byte [ecx]
mov byte [eax], dl
lea eax, [ebp - 0x504]
mov dword [ebp - 0x35c], eax
mov ecx, dword [ebp - 0x35c]
mov edx, dword [ebp - 0x360]
mov eax, dword [edx]
mov dword [ecx], eax
lea ecx, [ebp - 0x508]
push ecx
mov ecx, 0xa789c0
call fcn.00eb8c70
jmp 0xdf2791
mov dword [ebp - 0x280], 0xa789c0
mov edx, dword [ebp - 0x280]
mov dword [ebp - 0x368], edx
mov eax, dword [ebp - 0x280]
add eax, 4
mov dword [ebp - 0x364], eax
mov ecx, dword [ebp - 0x364]
mov edx, dword [ebp - 0x368]
mov eax, dword [edx]
mov dword [ecx], eax
mov eax, dword [0xa70ae0]
cdq
mov esi, eax
mov edi, edx
add esi, 7
adc edi, 0
mov eax, dword [0xa70ae4]
cdq
add eax, 0x2f67
adc edx, 0
push 0
push 0x2f67
push edx
push eax
call fcn.00fcf660
mov ecx, eax
mov eax, edx
add ecx, 1
adc eax, 0
mov dword [ebp - 0x36c], eax
mov eax, dword [0xa70ae4]
cdq
add eax, 7
adc edx, 0
push edx
push eax
mov eax, dword [ebp - 0x36c]
push eax
push ecx
call fcn.00fcf660
add esi, eax
adc edi, edx
add esi, 0x2f67
adc edi, 0
push edi
push esi
call fcn.00ded7a0
add esp, 8
add eax, dword [ebp - 0x1c8]
push eax
call fcn.00fbbc3b
add esp, 4
mov dword [ebp - 0x370], eax
mov edx, dword [ebp - 0x370]
push edx
mov eax, dword [ebp - 0x1f0]
push eax
call fcn.00df1010
add esp, 8
mov dword [ebp - 0x1cc], eax
push 0xa5d514
lea ecx, [ebp - 0x170]
call fcn.00de4290
mov ecx, dword [ebp - 0x160]
mov dword [ebp - 0x374], ecx
cmp dword [ebp - 0x374], 0xc
jae 0xdf289f
mov edx, dword [ebp - 0x160]
mov dword [ebp - 0x378], edx
cmp dword [ebp - 0x378], 0
jne 0xdf2876
mov dword [ebp - 0x284], 1
jmp 0xdf2880
mov dword [ebp - 0x284], 0
movzx eax, byte [ebp - 0x284]
test eax, eax
jne 0xdf289f
lea ecx, [ebp - 0x170]
push ecx
lea ecx, [ebp - 0x170]
call fcn.00de41c0
jmp 0xdf28ac
push 0
lea ecx, [ebp - 0x170]
call fcn.00dea150
mov edx, dword [ebp - 0x160]
mov dword [ebp - 0x37c], edx
cmp dword [ebp - 0x37c], 0
jne 0xdf28cd
mov dword [ebp - 0x288], 1
jmp 0xdf28d7
mov dword [ebp - 0x288], 0
movzx eax, byte [ebp - 0x288]
test eax, eax
je 0xdf294f
push 7
lea ecx, [ebp - 0x170]
call fcn.00eb9650
mov dword [ebp - 0x1e4], 0xa5d518
mov ecx, dword [ebp - 0x1e4]
add ecx, 1
mov dword [ebp - 0x380], ecx
mov edx, dword [ebp - 0x1e4]
mov al, byte [edx]
mov byte [ebp - 0x1be], al
add dword [ebp - 0x1e4], 1
cmp byte [ebp - 0x1be], 0
jne 0xdf2908
mov ecx, dword [ebp - 0x1e4]
sub ecx, dword [ebp - 0x380]
mov dword [ebp - 0x384], ecx
mov edx, dword [ebp - 0x384]
push edx
push 0xa5d518
lea ecx, [ebp - 0x170]
call fcn.00de6210
lea ecx, [ebp - 0x170]
call fcn.00de6030
mov eax, dword [ebp - 0x1e8]
push eax
call fcn.00fb546c
add esp, 4
jmp 0xdf2970
jmp 0xdf1592
mov eax, dword [ebp - 0x1cc]
pop edi
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00fa6b7b
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret