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

Disassembly:
mov ecx, dword [0x93ee7c]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
lea eax, [esp - 0x84]
cmp eax, dword [ecx + 8]
jbe 0x521f80
sub esp, 0x104
mov dword [esp + 0x120], 0
mov dword [esp + 0x124], 0
mov dword [esp + 0x128], 0
mov dword [esp + 0x5c], 0
mov dword [esp + 0x60], 0
mov dword [esp + 0x64], 0
mov dword [esp + 0x68], 0
movzx eax, word [esp + 0x110]
test ax, 4
je 0x520a1a
mov dword [esp + 0x70], 0xfffffffd
lea ecx, [esp + 0x70]
mov dword [esp + 0x60], ecx
mov dword [esp + 0x68], 1
jmp 0x520a38
test ax, 8
je 0x520a38
mov dword [esp + 0x6c], 0xfffffffd
lea ecx, [esp + 0x6c]
mov dword [esp + 0x60], ecx
mov dword [esp + 0x68], 1
mov ecx, dword [esp + 0x118]
test ecx, ecx
jne 0x520a4c
xor edx, edx
xor ebx, ebx
jmp 0x521bcd
lea eax, [0x6ff0e0]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], ecx
call fcn.0046c5c0
mov eax, dword [esp + 0xc]
mov dword [esp + 0xd8], eax
mov ecx, dword [esp + 0x118]
mov edx, dword [esp + 0x114]
xor ebx, ebx
jmp 0x520a98
mov ebp, dword [esp + 0x54]
lea ebx, [ebp + 1]
mov ecx, dword [esp + 0x118]
mov ebp, dword [esp + 0x114]
mov eax, esi
mov edx, ebp
cmp ecx, ebx
jle 0x521bbf
lea ebp, [edx + ebx*8]
mov esi, ecx
sub esi, ebx
dec esi
mov edi, dword [ebp + 4]
cmp ecx, esi
jbe 0x521f78
mov dword [esp + 0x84], edi
mov dword [esp + 0x54], ebx
mov ecx, dword [ebp]
mov dword [esp + 0x48], ecx
shl esi, 4
mov dword [esp + 0x7c], esi
lea edx, [eax + esi]
mov dword [esp + 0xd4], edx
mov dword [esp], edx
call fcn.0051f710
mov eax, dword [esp + 0x48]
test eax, eax
je 0x521b6a
mov edx, dword [eax + 8]
cmp edx, 0x8cac3de9
ja 0x521320
cmp edx, 0x49163278
ja 0x520e9f
cmp edx, 0x3e2307d4
ja 0x520cb5
cmp edx, 0x2e74d42b
ja 0x520bef
cmp edx, 0x778cdb8
je 0x520b7f
cmp edx, 0x2e74d42b
jne 0x521f70
lea edx, [0x6cc360]
cmp eax, edx
jne 0x521f70
mov ebx, dword [esp + 0x84]
mov ebp, dword [esp + 0x7c]
mov esi, dword [esp + 0xd8]
mov dword [esi + ebp], 0
mov dword [esi + ebp + 4], 0
mov dword [esi + ebp + 8], 0
mov dword [esi + ebp + 0xc], 0
mov word [esi + ebp], 0x4014
mov dword [esi + ebp + 8], ebx
jmp 0x520a7f
lea ecx, [0x6db180]
cmp eax, ecx
jne 0x521f58
mov eax, dword [esp + 0x84]
mov ecx, dword [eax + 4]
mov eax, dword [eax]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.0051f870
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0x7c]
mov edx, dword [esp + 0xd8]
mov dword [edx + ecx], 0
mov dword [edx + ecx + 4], 0
mov dword [edx + ecx + 8], 0
mov dword [edx + ecx + 0xc], 0
mov word [edx + ecx], 8
mov dword [edx + ecx + 8], eax
lea edx, [0x6cc360]
mov esi, dword [esp + 0xd8]
jmp 0x520a7f
cmp edx, 0x338a7ec0
jne 0x520c4b
lea edx, [0x6cc320]
cmp eax, edx
jne 0x521f58
mov ebx, dword [esp + 0x84]
mov ebp, dword [esp + 0x7c]
mov esi, dword [esp + 0xd8]
mov dword [esi + ebp], 0
mov dword [esi + ebp + 4], 0
mov dword [esi + ebp + 8], 0
mov dword [esi + ebp + 0xc], 0
mov word [esi + ebp], 0x4013
mov dword [esi + ebp + 8], ebx
lea edx, [0x6cc360]
jmp 0x520a7f
cmp edx, 0x3e2307d4
jne 0x521f58
lea edx, [0x6db240]
cmp eax, edx
jne 0x521f58
mov ebx, dword [esp + 0x84]
movsx ebx, word [ebx]
mov ebp, dword [esp + 0x7c]
mov esi, dword [esp + 0xd8]
mov dword [esi + ebp], 0
mov dword [esi + ebp + 4], 0
mov dword [esi + ebp + 8], 0
mov dword [esi + ebp + 0xc], 0
mov word [esi + ebp], 2
mov dword [esi + ebp + 8], ebx
sar ebx, 0x1f
mov dword [esi + ebp + 0xc], ebx
lea edx, [0x6cc360]
jmp 0x520a7f
cmp edx, 0x3fd4d6d6
ja 0x520d7d
cmp edx, 0x3f51d632
jne 0x520d1d
lea edx, [0x703de0]
cmp eax, edx
jne 0x521f58
mov ebx, dword [esp + 0x84]
mov ebp, dword [esp + 0x7c]
mov esi, dword [esp + 0xd8]
mov dword [esi + ebp], 0
mov dword [esi + ebp + 4], 0
mov dword [esi + ebp + 8], 0
mov dword [esi + ebp + 0xc], 0
mov word [esi + ebp], 0x400c
mov dword [esi + ebp + 8], ebx
lea edx, [0x6cc360]
jmp 0x520a7f
cmp edx, 0x3fd4d6d6
jne 0x521f58
lea edx, [0x70f380]
cmp eax, edx
jne 0x521f58
mov ebx, dword [esp + 0x84]
mov ebp, dword [esp + 0x7c]
mov esi, dword [esp + 0xd8]
mov dword [esi + ebp], 0
mov dword [esi + ebp + 4], 0
mov dword [esi + ebp + 8], 0
mov dword [esi + ebp + 0xc], 0
mov word [esi + ebp], 9
mov dword [esi + ebp + 8], ebx
lea edx, [0x6cc360]
jmp 0x520a7f
cmp edx, 0x4072c7d5
jne 0x520dd9
lea edx, [0x6cc520]
cmp eax, edx
jne 0x521f58
mov ebx, dword [esp + 0x84]
mov ebp, dword [esp + 0x7c]
mov esi, dword [esp + 0xd8]
mov dword [esi + ebp], 0
mov dword [esi + ebp + 4], 0
mov dword [esi + ebp + 8], 0
mov dword [esi + ebp + 0xc], 0
mov word [esi + ebp], 0x4004
mov dword [esi + ebp + 8], ebx
lea edx, [0x6cc360]
jmp 0x520a7f
cmp edx, 0x43daea34
jne 0x520e3f
lea edx, [0x6db1c0]
cmp eax, edx
jne 0x521f58
mov ebx, dword [esp + 0x84]
movsx ebx, byte [ebx]
mov ebp, dword [esp + 0x7c]
mov esi, dword [esp + 0xd8]
mov dword [esi + ebp], 0
mov dword [esi + ebp + 4], 0
mov dword [esi + ebp + 8], 0
mov dword [esi + ebp + 0xc], 0
mov word [esi + ebp], 0x10
mov dword [esi + ebp + 8], ebx
sar ebx, 0x1f
mov dword [esi + ebp + 0xc], ebx
lea edx, [0x6cc360]
jmp 0x520a7f
cmp edx, 0x49163278
jne 0x521f58
lea edx, [0x6cc3a0]
cmp eax, edx
jne 0x521f58
mov ebx, dword [esp + 0x84]
mov ebp, dword [esp + 0x7c]
mov esi, dword [esp + 0xd8]
mov dword [esi + ebp], 0
mov dword [esi + ebp + 4], 0
mov dword [esi + ebp + 8], 0
mov dword [esi + ebp + 0xc], 0
mov word [esi + ebp], 0x4015
mov dword [esi + ebp + 8], ebx
lea edx, [0x6cc360]
jmp 0x520a7f
cmp edx, 0x6bed3cfa
ja 0x52107a
cmp edx, 0x62de383d
ja 0x520fb3
cmp edx, 0x5051f1be
jne 0x520f53
lea edx, [0x71a020]
cmp eax, edx
jne 0x521f58
mov ebx, dword [esp + 0x84]
mov ebp, dword [ebx + 8]
test ebp, ebp
jne 0x520ee5
xor edi, edi
xor ebp, ebp
jmp 0x520ef6
mov esi, dword [ebx + 4]
mov edi, dword [esi]
cmp ebp, 1
jle 0x520ef4
mov ebp, dword [esi + 4]
jmp 0x520ef6
xor ebp, ebp
movzx ebx, byte [ebx]
test bl, bl
je 0x520f0a
xor ebx, ebx
sub ebx, edi
mov esi, 0
sbb esi, ebp
jmp 0x520f0e
mov esi, ebp
mov ebx, edi
mov ebp, dword [esp + 0x7c]
mov edi, dword [esp + 0xd8]
mov dword [edi + ebp], 0
mov dword [edi + ebp + 4], 0
mov dword [edi + ebp + 8], 0
mov dword [edi + ebp + 0xc], 0
mov word [edi + ebp], 0xe
mov dword [edi + ebp + 8], ebx
mov dword [edi + ebp + 0xc], esi
lea edx, [0x6cc360]
mov esi, edi
jmp 0x520a7f
cmp edx, 0x62de383d
jne 0x521f58
lea edx, [0x6cc2e0]
cmp eax, edx
jne 0x521f58
mov ebx, dword [esp + 0x84]
mov ebp, dword [esp + 0x7c]
mov esi, dword [esp + 0xd8]
mov dword [esi + ebp], 0
mov dword [esi + ebp + 4], 0
mov dword [esi + ebp + 8], 0
mov dword [esi + ebp + 0xc], 0
mov word [esi + ebp], 0x4003
mov dword [esi + ebp + 8], ebx
lea edx, [0x6cc360]
jmp 0x520a7f
cmp edx, 0x64fd0d3c
jne 0x521011
lea edx, [0x6db400]
cmp eax, edx
jne 0x521f58
mov ebx, dword [esp + 0x84]
mov ebx, dword [ebx]
mov ebp, dword [esp + 0x7c]
mov esi, dword [esp + 0xd8]
mov dword [esi + ebp], 0
mov dword [esi + ebp + 4], 0
mov dword [esi + ebp + 8], 0
mov dword [esi + ebp + 0xc], 0
mov word [esi + ebp], 0x13
mov dword [esi + ebp + 8], ebx
lea edx, [0x6cc360]
jmp 0x520a7f
cmp edx, 0x6bed3cfa
jne 0x521f58
lea edx, [0x6db2c0]
cmp eax, edx
jne 0x521f58
mov ebx, dword [esp + 0x84]
mov ebx, dword [ebx]
mov ebp, dword [esp + 0x7c]
mov esi, dword [esp + 0xd8]
mov dword [esi + ebp], 0
mov dword [esi + ebp + 4], 0
mov dword [esi + ebp + 8], 0
mov dword [esi + ebp + 0xc], 0
mov word [esi + ebp], 3
mov dword [esi + ebp + 8], ebx
sar ebx, 0x1f
mov dword [esi + ebp + 0xc], ebx
lea edx, [0x6cc360]
jmp 0x520a7f
cmp edx, 0x6e78e923
ja 0x521142
cmp edx, 0x6d448d5d
jne 0x5210e2
lea edx, [0x6cc560]
cmp eax, edx
jne 0x521f58
mov ebx, dword [esp + 0x84]
mov ebp, dword [esp + 0x7c]
mov esi, dword [esp + 0xd8]
mov dword [esi + ebp], 0
mov dword [esi + ebp + 4], 0
mov dword [esi + ebp + 8], 0
mov dword [esi + ebp + 0xc], 0
mov word [esi + ebp], 0x4005
mov dword [esi + ebp + 8], ebx
lea edx, [0x6cc360]
jmp 0x520a7f
cmp edx, 0x6e78e923
jne 0x521f58
lea edx, [0x6cc420]
cmp eax, edx
jne 0x521f58
mov ebx, dword [esp + 0x84]
mov ebp, dword [esp + 0x7c]
mov esi, dword [esp + 0xd8]
mov dword [esi + ebp], 0
mov dword [esi + ebp + 4], 0
mov dword [esi + ebp + 8], 0
mov dword [esi + ebp + 0xc], 0
mov word [esi + ebp], 0x4013
mov dword [esi + ebp + 8], ebx
lea edx, [0x6cc360]
jmp 0x520a7f
cmp edx, 0x81044065
je 0x52125b
cmp edx, 0x889ce7f8
jne 0x5211aa
lea edx, [0x6cc2a0]
cmp eax, edx
jne 0x521f58
mov ebx, dword [esp + 0x84]
mov ebp, dword [esp + 0x7c]
mov esi, dword [esp + 0xd8]
mov dword [esi + ebp], 0
mov dword [esi + ebp + 4], 0
mov dword [esi + ebp + 8], 0
mov dword [esi + ebp + 0xc], 0
mov word [esi + ebp], 0x4012
mov dword [esi + ebp + 8], ebx
lea edx, [0x6cc360]
jmp 0x520a7f
cmp edx, 0x8cac3de9
jne 0x521f58
lea ecx, [0x718660]
cmp eax, ecx
jne 0x521f58
lea edi, [esp + 0xdc]
mov esi, dword [esp + 0x84]
call fcn.00471fae
lea edi, [esp]
lea esi, [esp + 0xdc]
call fcn.00471fae
lea eax, [0x7209f0]
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], 0x13
call fcn.004a7cc0
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x20]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.0051f870
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0x7c]
mov edx, dword [esp + 0xd8]
mov dword [edx + ecx], 0
mov dword [edx + ecx + 4], 0
mov dword [edx + ecx + 8], 0
mov dword [edx + ecx + 0xc], 0
mov word [edx + ecx], 8
mov dword [edx + ecx + 8], eax
lea edx, [0x6cc360]
mov esi, dword [esp + 0xd8]
jmp 0x520a7f
lea ecx, [0x6d1780]
cmp eax, ecx
jne 0x521f58
mov eax, dword [esp + 0x84]
mov ecx, dword [eax]
mov edx, dword [eax + 4]
mov eax, dword [eax + 8]
mov dword [esp], ecx
mov dword [esp + 4], edx
mov dword [esp + 8], eax
call fcn.005237d0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x7c]
mov edx, dword [esp + 0xd8]
mov dword [edx + ecx], 0
mov dword [edx + ecx + 4], 0
mov dword [edx + ecx + 8], 0
mov dword [edx + ecx + 0xc], 0
mov word [edx + ecx], 0x2011
mov dword [edx + ecx + 8], eax
lea eax, [0x6e53e0]
mov dword [esp], eax
call fcn.0040bb90
mov eax, dword [esp + 4]
lea ecx, [0x521fd0]
mov dword [eax], ecx
mov edx, dword [0x93f150]
test edx, edx
jne 0x5212ed
mov edx, dword [esp + 0xd4]
jmp 0x5212fb
call fcn.00471830
mov edx, dword [esp + 0xd4]
mov dword [edi], edx
mov dword [eax + 4], edx
mov dword [esp], eax
call fcn.00435200
test eax, eax
jne 0x521ba7
lea edx, [0x6cc360]
mov esi, dword [esp + 0xd8]
jmp 0x520a7f
cmp edx, 0xc3230e0b
ja 0x52177b
cmp edx, 0x93592d94
ja 0x521546
cmp edx, 0x8ed6f7a2
ja 0x521470
cmp edx, 0x8d826c95
jne 0x5213b8
lea edx, [0x6db500]
cmp eax, edx
jne 0x521f58
mov ebx, dword [esp + 0x84]
movss xmm0, dword [ebx]
movss dword [esp + 0x40], xmm0
mov ebx, dword [esp + 0x40]
mov ebp, dword [esp + 0x44]
mov esi, dword [esp + 0x7c]
mov edi, dword [esp + 0xd8]
mov dword [edi + esi], 0
mov dword [edi + esi + 4], 0
mov dword [edi + esi + 8], 0
mov dword [edi + esi + 0xc], 0
mov word [edi + esi], 4
mov dword [edi + esi + 8], ebx
mov dword [edi + esi + 0xc], ebp
lea edx, [0x6cc360]
mov esi, edi
jmp 0x520a7f
cmp edx, 0x8ed6f7a2
jne 0x521f58
lea ecx, [0x719800]
cmp eax, ecx
jne 0x521f58
mov esi, dword [esp + 0x84]
test byte [esi], al
lea edi, [esp + 0xdc]
call fcn.00471fae
lea edi, [esp]
lea esi, [esp + 0xdc]
call fcn.00471fae
lea eax, [0x7209f0]
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], 0x13
call fcn.004a7cc0
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x88], eax
mov dword [esp + 0x8c], ecx
lea eax, [esp + 0x88]
mov ecx, dword [esp + 0x7c]
mov edx, dword [esp + 0xd8]
mov dword [edx + ecx], 0
mov dword [edx + ecx + 4], 0
mov dword [edx + ecx + 8], 0
mov dword [edx + ecx + 0xc], 0
mov word [edx + ecx], 0x4008
mov dword [edx + ecx + 8], eax
lea edx, [0x6cc360]
mov esi, dword [esp + 0xd8]
jmp 0x520a7f
cmp edx, 0x8fc52ddb
jne 0x5214ce
lea edx, [0x6db380]
cmp eax, edx
jne 0x521f58
mov ebx, dword [esp + 0x84]
mov ebx, dword [ebx]
mov ebp, dword [esp + 0x7c]
mov esi, dword [esp + 0xd8]
mov dword [esi + ebp], 0
mov dword [esi + ebp + 4], 0
mov dword [esi + ebp + 8], 0
mov dword [esi + ebp + 0xc], 0
mov word [esi + ebp], 0x15
mov dword [esi + ebp + 8], ebx
lea edx, [0x6cc360]
jmp 0x520a7f
cmp edx, 0x93592d94
jne 0x521f58
lea edx, [0x6db540]
cmp eax, edx
jne 0x521f58
mov ebx, dword [esp + 0x84]
movsd xmm0, qword [ebx]
movsd qword [esp + 0x38], xmm0
mov ebx, dword [esp + 0x38]
mov ebp, dword [esp + 0x3c]
mov esi, dword [esp + 0x7c]
mov edi, dword [esp + 0xd8]
mov dword [edi + esi], 0
mov dword [edi + esi + 4], 0
mov dword [edi + esi + 8], 0
mov dword [edi + esi + 0xc], 0
mov word [edi + esi], 5
mov dword [edi + esi + 8], ebx
mov dword [edi + esi + 0xc], ebp
lea edx, [0x6cc360]
mov esi, edi
jmp 0x520a7f
cmp edx, 0x99d6dd43
ja 0x52161c
cmp edx, 0x95738979
jne 0x5215b1
lea edx, [0x6db200]
cmp eax, edx
jne 0x521f58
mov ebx, dword [esp + 0x84]
movzx ebx, byte [ebx]
mov ebp, dword [esp + 0x7c]
mov esi, dword [esp + 0xd8]
mov dword [esi + ebp], 0
mov dword [esi + ebp + 4], 0
mov dword [esi + ebp + 8], 0
mov dword [esi + ebp + 0xc], 0
mov word [esi + ebp], 0x10
mov dword [esi + ebp + 8], ebx
lea edx, [0x6cc360]
jmp 0x520a7f
cmp edx, 0x99d6dd43
jne 0x521f58
lea edx, [0x6db340]
cmp eax, edx
jne 0x521f58
mov ebx, dword [esp + 0x84]
mov ebp, dword [ebx]
mov ebx, dword [ebx + 4]
mov esi, dword [esp + 0x7c]
mov edi, dword [esp + 0xd8]
mov dword [edi + esi], 0
mov dword [edi + esi + 4], 0
mov dword [edi + esi + 8], 0
mov dword [edi + esi + 0xc], 0
mov word [edi + esi], 0x14
mov dword [edi + esi + 8], ebp
mov dword [edi + esi + 0xc], ebx
lea edx, [0x6cc360]
mov esi, edi
jmp 0x520a7f
cmp edx, 0xb00b9f48
jne 0x5216bf
lea edx, [0x6db580]
cmp eax, edx
jne 0x521f58
mov ebx, dword [esp + 0x84]
movzx ebx, byte [ebx]
test bl, bl
je 0x521680
mov ebx, dword [esp + 0x7c]
mov ebp, dword [esp + 0xd8]
mov dword [ebp + ebx], 0
mov dword [ebp + ebx + 4], 0
mov dword [ebp + ebx + 8], 0
mov dword [ebp + ebx + 0xc], 0
mov word [ebp + ebx], 0xb
mov dword [ebp + ebx + 8], 0xffff
jmp 0x5216b2
mov ebx, dword [esp + 0x7c]
mov ebp, dword [esp + 0xd8]
mov dword [ebp + ebx], 0
mov dword [ebp + ebx + 4], 0
mov dword [ebp + ebx + 8], 0
mov dword [ebp + ebx + 0xc], 0
mov word [ebp + ebx], 0xb
lea edx, [0x6cc360]
mov esi, ebp
jmp 0x520a7f
cmp edx, 0xba585d67
jne 0x52171b
lea edx, [0x6cc3e0]
cmp eax, edx
jne 0x521f58
mov ebx, dword [esp + 0x84]
mov ebp, dword [esp + 0x7c]
mov esi, dword [esp + 0xd8]
mov dword [esi + ebp], 0
mov dword [esi + ebp + 4], 0
mov dword [esi + ebp + 8], 0
mov dword [esi + ebp + 0xc], 0
mov word [esi + ebp], 0x4003
mov dword [esi + ebp + 8], ebx
lea edx, [0x6cc360]
jmp 0x520a7f
cmp edx, 0xc3230e0b
jne 0x521f58
lea edx, [0x6cc260]
cmp eax, edx
jne 0x521f58
mov ebx, dword [esp + 0x84]
mov ebp, dword [esp + 0x7c]
mov esi, dword [esp + 0xd8]
mov dword [esi + ebp], 0
mov dword [esi + ebp + 4], 0
mov dword [esi + ebp + 8], 0
mov dword [esi + ebp + 0xc], 0
mov word [esi + ebp], 0x4002
mov dword [esi + ebp + 8], ebx
lea edx, [0x6cc360]
jmp 0x520a7f
cmp edx, 0xd9632893
ja 0x521917
cmp edx, 0xd1d67d89
ja 0x521858
cmp edx, 0xcb735792
jne 0x5217f8
lea edx, [0x6db3c0]
cmp eax, edx
jne 0x521f58
mov ebx, dword [esp + 0x84]
mov ebx, dword [ebx]
mov ebp, dword [esp + 0x7c]
mov esi, dword [esp + 0xd8]
mov dword [esi + ebp], 0
mov dword [esi + ebp + 4], 0
mov dword [esi + ebp + 8], 0
mov dword [esi + ebp + 0xc], 0
mov word [esi + ebp], 3
mov dword [esi + ebp + 8], ebx
sar ebx, 0x1f
mov dword [esi + ebp + 0xc], ebx
lea edx, [0x6cc360]
jmp 0x520a7f
cmp edx, 0xd1d67d89
jne 0x521f58
lea edx, [0x6d0540]
cmp eax, edx
jne 0x521f58
mov ebx, dword [esp + 0x84]
mov ebp, dword [esp + 0x7c]
mov esi, dword [esp + 0xd8]
mov dword [esi + ebp], 0
mov dword [esi + ebp + 4], 0
mov dword [esi + ebp + 8], 0
mov dword [esi + ebp + 0xc], 0
mov word [esi + ebp], 0x4009
mov dword [esi + ebp + 8], ebx
lea edx, [0x6cc360]
jmp 0x520a7f
cmp edx, 0xd6631a7c
jne 0x5218b4
lea edx, [0x6cc1e0]
cmp eax, edx
jne 0x521f58
mov ebx, dword [esp + 0x84]
mov ebp, dword [esp + 0x7c]
mov esi, dword [esp + 0xd8]
mov dword [esi + ebp], 0
mov dword [esi + ebp + 4], 0
mov dword [esi + ebp + 8], 0
mov dword [esi + ebp + 0xc], 0
mov word [esi + ebp], 0x4010
mov dword [esi + ebp + 8], ebx
lea edx, [0x6cc360]
jmp 0x520a7f
cmp edx, 0xd9632893
jne 0x521f58
lea edx, [0x6db280]
cmp eax, edx
jne 0x521f58
mov ebx, dword [esp + 0x84]
movzx ebx, word [ebx]
mov ebp, dword [esp + 0x7c]
mov esi, dword [esp + 0xd8]
mov dword [esi + ebp], 0
mov dword [esi + ebp + 4], 0
mov dword [esi + ebp + 8], 0
mov dword [esi + ebp + 0xc], 0
mov word [esi + ebp], 0x12
mov dword [esi + ebp + 8], ebx
lea edx, [0x6cc360]
jmp 0x520a7f
cmp edx, 0xe8fe0eb5
ja 0x521a50
cmp edx, 0xe47f76c1
jne 0x52197f
lea edx, [0x6cc1a0]
cmp eax, edx
jne 0x521f58
mov ebx, dword [esp + 0x84]
mov ebp, dword [esp + 0x7c]
mov esi, dword [esp + 0xd8]
mov dword [esi + ebp], 0
mov dword [esi + ebp + 4], 0
mov dword [esi + ebp + 8], 0
mov dword [esi + ebp + 0xc], 0
mov word [esi + ebp], 0x4008
mov dword [esi + ebp + 8], ebx
lea edx, [0x6cc360]
jmp 0x520a7f
cmp edx, 0xe8fe0eb5
jne 0x521f58
lea ecx, [0x6d1a40]
cmp eax, ecx
jne 0x521f58
mov eax, dword [esp + 0x84]
mov ecx, dword [eax]
mov edx, dword [eax + 4]
mov eax, dword [eax + 8]
mov dword [esp], ecx
mov dword [esp + 4], edx
mov dword [esp + 8], eax
call fcn.005238b0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x7c]
mov edx, dword [esp + 0xd8]
mov dword [edx + ecx], 0
mov dword [edx + ecx + 4], 0
mov dword [edx + ecx + 8], 0
mov dword [edx + ecx + 0xc], 0
mov word [edx + ecx], 0x2008
mov dword [edx + ecx + 8], eax
lea eax, [0x6e53e0]
mov dword [esp], eax
call fcn.0040bb90
mov eax, dword [esp + 4]
lea ecx, [0x521f90]
mov dword [eax], ecx
mov edx, dword [0x93f150]
test edx, edx
jne 0x521a1d
mov edx, dword [esp + 0xd4]
jmp 0x521a2b
call fcn.00471830
mov edx, dword [esp + 0xd4]
mov dword [edi], edx
mov dword [eax + 4], edx
mov dword [esp], eax
call fcn.00435200
test eax, eax
jne 0x521bb3
lea edx, [0x6cc360]
mov esi, dword [esp + 0xd8]
jmp 0x520a7f
cmp edx, 0xe927f9e3
jne 0x521aae
lea edx, [0x6db300]
cmp eax, edx
jne 0x521f58
mov ebx, dword [esp + 0x84]
mov ebx, dword [ebx]
mov ebp, dword [esp + 0x7c]
mov esi, dword [esp + 0xd8]
mov dword [esi + ebp], 0
mov dword [esi + ebp + 4], 0
mov dword [esi + ebp + 8], 0
mov dword [esi + ebp + 0xc], 0
mov word [esi + ebp], 0x13
mov dword [esi + ebp + 8], ebx
lea edx, [0x6cc360]
jmp 0x520a7f
cmp edx, 0xf3b50de0
jne 0x521b0a
lea edx, [0x6cc220]
cmp eax, edx
jne 0x521f58
mov ebx, dword [esp + 0x84]
mov ebp, dword [esp + 0x7c]
mov esi, dword [esp + 0xd8]
mov dword [esi + ebp], 0
mov dword [esi + ebp + 4], 0
mov dword [esi + ebp + 8], 0
mov dword [esi + ebp + 0xc], 0
mov word [esi + ebp], 0x4010
mov dword [esi + ebp + 8], ebx
lea edx, [0x6cc360]
jmp 0x520a7f
cmp edx, 0xfcd60fce
jne 0x521f58
lea edx, [0x6cc5a0]
cmp eax, edx
jne 0x521f58
mov ebx, dword [esp + 0x84]
mov ebp, dword [esp + 0x7c]
mov esi, dword [esp + 0xd8]
mov dword [esi + ebp], 0
mov dword [esi + ebp + 4], 0
mov dword [esi + ebp + 8], 0
mov dword [esi + ebp + 0xc], 0
mov word [esi + ebp], 0x400b
mov dword [esi + ebp + 8], ebx
lea edx, [0x6cc360]
jmp 0x520a7f
mov edx, dword [esp + 0x7c]
mov ebx, dword [esp + 0xd8]
mov dword [ebx + edx], 0
mov dword [ebx + edx + 4], 0
mov dword [ebx + edx + 8], 0
mov dword [ebx + edx + 0xc], 0
mov word [ebx + edx], 1
lea edx, [0x6cc360]
mov esi, ebx
jmp 0x520a7f
call fcn.004358b0
add esp, 0x104
ret
call fcn.004358b0
add esp, 0x104
ret
mov ebx, eax
mov dword [esp + 0x5c], ebx
mov dword [esp + 0x64], ecx
mov edx, ecx
mov ebx, eax
mov dword [esp + 0x44], edx
mov dword [esp + 0x80], ebx
lea eax, [0x6ff0e0]
mov dword [esp], eax
call fcn.0040bb90
mov eax, dword [esp + 4]
mov dword [esp + 0x120], eax
lea edi, [esp + 0x90]
xor eax, eax
call fcn.00471ac1
mov eax, dword [esp + 0x120]
mov dword [esp], eax
call fcn.0051f710
mov eax, dword [esp + 0x108]
mov dword [esp + 0x100], eax
mov ecx, dword [0x91ebd8]
mov dword [esp + 0xfc], ecx
movzx ecx, word [esp + 0x110]
movsx ecx, cx
mov dword [esp + 0x78], ecx
lea edx, [esp + 0x5c]
mov dword [esp + 0xf8], edx
mov edx, dword [esp + 0x120]
mov dword [esp + 0xf4], edx
lea edx, [esp + 0x90]
mov dword [esp + 0xf0], edx
mov eax, dword [eax]
mov dword [esp + 0xd0], eax
mov edx, dword [0x913374]
nop
mov dword [esp], edx
mov dword [esp + 4], 0
mov dword [esp + 8], 0
mov dword [esp + 0xc], 0
call fcn.0051d970
mov eax, dword [esp + 0xd0]
mov eax, dword [eax + 0x18]
mov ecx, dword [esp + 0x100]
mov edx, dword [esp + 0xfc]
mov ebx, dword [esp + 0xf8]
mov ebp, dword [esp + 0xf4]
mov esi, dword [esp + 0xf0]
mov edi, dword [esp + 0x10]
mov dword [esp], eax
mov dword [esp + 4], 9
mov dword [esp + 8], ecx
mov eax, dword [esp + 0x10c]
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], edx
mov dword [esp + 0x14], edi
mov eax, dword [esp + 0x78]
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebp
mov dword [esp + 0x24], esi
mov dword [esp + 0x28], 0
call fcn.0046e710
mov eax, dword [esp + 0x2c]
test eax, eax
je 0x521de2
mov dword [esp + 0x58], eax
lea eax, [esp + 0x90]
mov dword [esp], eax
call fcn.00522460
lea eax, [esp + 0x90]
mov dword [esp], eax
call fcn.005225b0
mov eax, dword [esp + 0xc0]
mov dword [esp + 0x74], eax
mov ecx, dword [esp + 0xbc]
mov dword [esp + 0xcc], ecx
lea edx, [0x70dd00]
mov dword [esp], edx
lea edx, [esp + 0x90]
mov dword [esp + 4], edx
call fcn.00409d70
mov eax, dword [esp + 8]
mov dword [esp + 0xd8], eax
lea ecx, [0x6f4d20]
mov dword [esp], ecx
call fcn.0040bb90
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x58]
mov dword [eax], ecx
mov ecx, dword [esp + 0x74]
mov dword [eax + 8], ecx
mov ecx, dword [0x93f150]
test ecx, ecx
jne 0x521da7
mov ecx, dword [esp + 0xcc]
mov edx, dword [esp + 0xd8]
jmp 0x521dbf
call fcn.00471840
mov ecx, dword [esp + 0xcc]
mov dword [edi], ecx
mov edx, dword [esp + 0xd8]
mov dword [edi + 4], edx
mov dword [eax + 4], ecx
lea ecx, [0x78ae90]
mov dword [eax + 0xc], ecx
mov dword [eax + 0x10], edx
lea ecx, [0x78aa70]
mov dword [esp + 0x124], ecx
mov dword [esp + 0x128], eax
mov eax, dword [esp + 0x80]
mov ecx, dword [esp + 0x44]
mov edx, dword [esp + 0x118]
xor ebx, ebx
jmp 0x521e09
add eax, 0x10
inc ebx
mov ebp, dword [esp + 0x44]
mov ecx, ebp
mov edx, dword [esp + 0x118]
cmp ebx, ecx
jge 0x521f31
mov dword [esp + 0x50], ebx
mov dword [esp + 0xd8], eax
lea edi, [esp + 0xdc]
mov esi, eax
call fcn.00471fb8
mov ecx, edx
sub edx, ebx
mov dword [esp + 0x7c], edx
cmp word [esp + 0xdc], 8
jne 0x521e83
mov ebp, dword [esp + 0xe4]
mov esi, dword [esp + 0xe8]
test ebp, ebp
xchg edi, ebx
setne bl
xchg edi, ebx
test esi, esi
xchg esi, ebx
setne bl
xchg esi, ebx
or edi, esi
xchg edi, eax
test al, al
xchg edi, eax
je 0x521e83
mov dword [esp], ebp
call fcn.0051f980
mov eax, dword [esp + 0xd8]
mov ecx, dword [esp + 0x118]
mov edx, dword [esp + 0x7c]
mov ebx, dword [esp + 0x50]
cmp word [esp + 0xdc], 0x4008
jne 0x521df8
mov ebp, dword [esp + 0xe4]
mov esi, dword [esp + 0xe8]
test ebp, ebp
xchg edi, ebx
setne bl
xchg edi, ebx
test esi, esi
xchg esi, ebx
setne bl
xchg esi, ebx
or edi, esi
xchg edi, eax
test al, al
xchg edi, eax
je 0x521df8
lea eax, [edx - 1]
mov dword [esp + 0x4c], eax
mov ecx, dword [ebp]
mov dword [esp], ecx
call fcn.00523a30
mov ecx, dword [esp + 0x118]
mov eax, dword [esp + 0x4c]
cmp ecx, eax
jbe 0x521f53
mov eax, dword [esp + 0x7c]
mov edx, dword [esp + 0x114]
lea eax, [edx + eax*8 - 8]
mov ebx, dword [eax]
lea ebp, [0x6cc1a0]
cmp ebx, ebp
jne 0x521f3d
mov eax, dword [eax + 4]
mov ebx, dword [esp + 8]
mov esi, dword [esp + 4]
mov dword [eax + 4], ebx
mov ebx, dword [0x93f150]
test ebx, ebx
je 0x521f1f
call fcn.00471840
mov dword [edi], esi
mov ebx, dword [eax]
mov dword [edi + 4], ebx
mov dword [eax], esi
mov eax, dword [esp + 0xd8]
mov ebx, dword [esp + 0x50]
jmp 0x521df8
call fcn.004358b0
add esp, 0x104
ret
mov dword [esp], ebx
mov dword [esp + 4], ebp
lea eax, [0x6dc400]
mov dword [esp + 8], eax
call fcn.00409bd0
call fcn.004718b0
lea eax, [0x6db180]
mov dword [esp], eax
lea eax, [0x78a460]
mov dword [esp + 4], eax
call fcn.0046a9e0
lea ecx, [0x6db180]
jmp 0x521f58
mov eax, esi
call fcn.004718b0
nop
call fcn.00470430
jmp fcn.00520990