Function at 0x50c750
Capabilities:
Inspect section memory permissions
Resolve function by parsing pe exports

Disassembly:
mov eax, 0x1108
call fcn.00563290
push ebx
push ebp
push esi
mov dword [esp + 0x14], ecx
push edi
mov ecx, 0x41d
xor eax, eax
lea edi, [esp + 0xa4]
mov dword [esp + 0xa0], 0
lea edx, [esp + 0x1b0]
rep stosd dword es:[edi], eax
lea eax, [esp + 0xa0]
lea ecx, [esp + 0x128]
mov dword [esp + 0x24], eax
mov dword [esp + 0x28], ecx
lea eax, [esp + 0x238]
lea ecx, [esp + 0x2c0]
mov dword [esp + 0x2c], edx
mov dword [esp + 0x30], eax
mov dword [esp + 0x34], ecx
lea edx, [esp + 0x348]
lea eax, [esp + 0x3d0]
lea ecx, [esp + 0x458]
mov dword [esp + 0x38], edx
mov dword [esp + 0x3c], eax
mov dword [esp + 0x40], ecx
lea edx, [esp + 0x4e0]
lea eax, [esp + 0x568]
lea ecx, [esp + 0x5f0]
mov dword [esp + 0x44], edx
mov dword [esp + 0x48], eax
mov dword [esp + 0x4c], ecx
lea edx, [esp + 0x678]
lea eax, [esp + 0x700]
lea ecx, [esp + 0x788]
mov dword [esp + 0x50], edx
mov dword [esp + 0x54], eax
mov dword [esp + 0x58], ecx
lea edx, [esp + 0x810]
lea eax, [esp + 0x898]
lea ecx, [esp + 0x920]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], eax
mov dword [esp + 0x64], ecx
lea edx, [esp + 0x9a8]
lea eax, [esp + 0xa30]
lea ecx, [esp + 0xab8]
mov dword [esp + 0x68], edx
mov dword [esp + 0x6c], eax
mov dword [esp + 0x70], ecx
lea edx, [esp + 0xb40]
lea eax, [esp + 0xbc8]
lea ecx, [esp + 0xc50]
mov dword [esp + 0x74], edx
mov dword [esp + 0x78], eax
mov dword [esp + 0x7c], ecx
lea edx, [esp + 0xcd8]
lea eax, [esp + 0xd60]
lea ecx, [esp + 0xde8]
mov dword [esp + 0x80], edx
mov dword [esp + 0x84], eax
mov dword [esp + 0x88], ecx
lea edx, [esp + 0xe70]
lea eax, [esp + 0xef8]
lea ecx, [esp + 0xf80]
mov dword [esp + 0x8c], edx
mov dword [esp + 0x90], eax
mov dword [esp + 0x94], ecx
mov ecx, dword [esp + 0x1120]
lea edx, [esp + 0x1008]
lea eax, [esp + 0x1090]
mov dword [esp + 0x98], edx
mov dword [esp + 0x9c], eax
mov dword [esp + 0x20], ecx
lea ebp, [esp + 0x24]
mov dword [esp + 0x10], 0x1f
mov eax, dword [esp + 0x18]
mov ebx, dword [ebp]
mov esi, dword [ebp - 4]
mov edi, ebx
mov ecx, dword [eax]
push 0
shl ecx, 2
mov edx, ecx
push ebx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, eax
call fcn.0050c6b0
mov ecx, dword [esp + 0x18]
mov eax, dword [ecx + 0x140c]
push eax
push ebx
call fcn.0050c5f0
test ax, ax
jl 0x50c957
mov esi, dword [esp + 0x18]
push 0
mov ecx, dword [esi + 0x140c]
push ecx
push ebx
mov ecx, esi
call fcn.0050c650
jmp 0x50c95b
mov esi, dword [esp + 0x18]
mov eax, dword [esp + 0x10]
add ebp, 4
dec eax
mov dword [esp + 0x10], eax
jne 0x50c901
mov ecx, dword [esi]
mov edx, dword [esp + 0x111c]
shl ecx, 2
mov dword [esp + 0x10], ecx
mov edi, edx
lea eax, [ecx + edx - 8]
mov ebx, ecx
mov dword [esp + 0x14], eax
xor eax, eax
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, ebx
and ecx, 3
rep stosb byte es:[edi], al
mov dword [edx], 0
mov cx, word [esi]
mov edx, dword [esp + 0x1124]
movsx eax, cx
mov edi, dword [edx + eax*4 - 4]
lea eax, [edx + eax*4 - 4]
sub eax, 4
test edi, edi
jne 0x50c9c8
dec ecx
test cx, cx
je 0x50e766
mov edi, dword [eax]
sub eax, 4
test edi, edi
je 0x50c9b5
test cx, cx
je 0x50e766
movsx eax, cx
dec ecx
lea edx, [edx + eax*4 - 4]
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x1124], edx
jmp 0x50c9ea
mov esi, dword [esp + 0x18]
mov cx, word [esi]
mov ebx, dword [esp + 0x111c]
movsx eax, cx
dec ecx
lea eax, [ebx + eax*4 - 4]
test cx, cx
mov edx, eax
je 0x50ca14
movsx ecx, cx
mov edi, dword [edx - 4]
sub edx, 4
mov dword [eax], edi
sub eax, 4
dec ecx
jne 0x50ca06
mov ecx, dword [esp + 0x10]
mov dword [eax], 0
mov edx, dword [esi + 0x310]
mov eax, dword [ecx + ebx - 4]
sub eax, edx
test eax, eax
jg 0x50ca8d
jne 0x50cad2
mov edx, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov eax, dword [edx]
mov ecx, dword [ecx + 0x390]
cmp eax, ecx
ja 0x50ca8d
jne 0x50cad2
mov ecx, dword [esp + 0x18]
mov di, word [ecx]
mov edx, dword [ecx + 0x1488]
movsx eax, di
shl eax, 2
mov ecx, dword [edx + eax - 4]
lea esi, [eax + ebx - 4]
lea edx, [edx + eax - 4]
mov eax, dword [esi]
cmp eax, ecx
jb 0x50cad2
sub edx, 4
sub esi, 4
cmp eax, ecx
ja 0x50ca8d
dec edi
test di, di
je 0x50ca8d
mov eax, dword [esi]
mov ecx, dword [edx]
cmp eax, ecx
jae 0x50ca73
jmp 0x50cad2
mov eax, dword [esp + 0x18]
xor ecx, ecx
mov edx, ebx
mov esi, dword [eax + 0x1488]
mov ax, word [eax]
mov di, ax
dec eax
test di, di
je 0x50cad2
movsx ebx, ax
inc ebx
mov edi, dword [esi]
test ecx, ecx
mov ecx, dword [edx]
mov eax, ecx
je 0x50cabf
sub eax, edi
dec eax
cmp edi, ecx
sbb ecx, ecx
inc ecx
jmp 0x50cac7
sub eax, edi
cmp ecx, edi
sbb ecx, ecx
neg ecx
mov dword [edx], eax
add esi, 4
add edx, 4
dec ebx
jne 0x50caab
mov eax, dword [esp + 0x10]
mov ebx, dword [esp + 0x111c]
mov ebp, dword [esp + 0x18]
mov eax, dword [eax + ebx - 4]
sub eax, dword [ebp + 0x30c]
test eax, eax
jg 0x50cb43
jne 0x50cb85
mov ecx, dword [esp + 0x14]
mov eax, dword [ecx]
mov ecx, dword [ebp + 0x38c]
cmp eax, ecx
ja 0x50cb43
jne 0x50cb85
mov di, word [ebp]
mov edx, dword [ebp + 0x1484]
movsx eax, di
shl eax, 2
mov ecx, dword [edx + eax - 4]
lea esi, [eax + ebx - 4]
lea edx, [edx + eax - 4]
mov eax, dword [esi]
cmp eax, ecx
jb 0x50cb85
sub edx, 4
sub esi, 4
cmp eax, ecx
ja 0x50cb43
dec edi
test di, di
je 0x50cb43
mov eax, dword [esi]
mov ecx, dword [edx]
cmp eax, ecx
jae 0x50cb29
jmp 0x50cb85
mov ax, word [ebp]
mov esi, dword [ebp + 0x1484]
xor ecx, ecx
mov di, ax
dec eax
mov edx, ebx
test di, di
je 0x50cb85
movsx ebx, ax
inc ebx
mov edi, dword [esi]
test ecx, ecx
mov ecx, dword [edx]
mov eax, ecx
je 0x50cb72
sub eax, edi
dec eax
cmp edi, ecx
sbb ecx, ecx
inc ecx
jmp 0x50cb7a
sub eax, edi
cmp ecx, edi
sbb ecx, ecx
neg ecx
mov dword [edx], eax
add esi, 4
add edx, 4
dec ebx
jne 0x50cb5e
mov eax, dword [esp + 0x10]
mov ebx, dword [esp + 0x111c]
mov edx, dword [ebp + 0x308]
mov eax, dword [eax + ebx - 4]
sub eax, edx
test eax, eax
jg 0x50cbf4
jne 0x50cc36
mov ecx, dword [esp + 0x14]
mov eax, dword [ecx]
mov ecx, dword [ebp + 0x388]
cmp eax, ecx
ja 0x50cbf4
jne 0x50cc36
mov di, word [ebp]
mov edx, dword [ebp + 0x1480]
movsx eax, di
shl eax, 2
mov ecx, dword [edx + eax - 4]
lea esi, [eax + ebx - 4]
lea edx, [edx + eax - 4]
mov eax, dword [esi]
cmp eax, ecx
jb 0x50cc36
sub edx, 4
sub esi, 4
cmp eax, ecx
ja 0x50cbf4
dec edi
test di, di
je 0x50cbf4
mov eax, dword [esi]
mov ecx, dword [edx]
cmp eax, ecx
jae 0x50cbda
jmp 0x50cc36
mov ax, word [ebp]
mov esi, dword [ebp + 0x1480]
xor ecx, ecx
mov di, ax
dec eax
mov edx, ebx
test di, di
je 0x50cc36
movsx ebx, ax
inc ebx
mov edi, dword [esi]
test ecx, ecx
mov ecx, dword [edx]
mov eax, ecx
je 0x50cc23
sub eax, edi
dec eax
cmp edi, ecx
sbb ecx, ecx
inc ecx
jmp 0x50cc2b
sub eax, edi
cmp ecx, edi
sbb ecx, ecx
neg ecx
mov dword [edx], eax
add esi, 4
add edx, 4
dec ebx
jne 0x50cc0f
mov eax, dword [esp + 0x10]
mov ebx, dword [esp + 0x111c]
mov edx, dword [ebp + 0x304]
mov eax, dword [eax + ebx - 4]
sub eax, edx
test eax, eax
jg 0x50cca5
jne 0x50cce7
mov ecx, dword [esp + 0x14]
mov eax, dword [ecx]
mov ecx, dword [ebp + 0x384]
cmp eax, ecx
ja 0x50cca5
jne 0x50cce7
mov di, word [ebp]
mov edx, dword [ebp + 0x147c]
movsx eax, di
shl eax, 2
mov ecx, dword [edx + eax - 4]
lea esi, [eax + ebx - 4]
lea edx, [edx + eax - 4]
mov eax, dword [esi]
cmp eax, ecx
jb 0x50cce7
sub edx, 4
sub esi, 4
cmp eax, ecx
ja 0x50cca5
dec edi
test di, di
je 0x50cca5
mov eax, dword [esi]
mov ecx, dword [edx]
cmp eax, ecx
jae 0x50cc8b
jmp 0x50cce7
mov ax, word [ebp]
mov esi, dword [ebp + 0x147c]
xor ecx, ecx
mov di, ax
dec eax
mov edx, ebx
test di, di
je 0x50cce7
movsx ebx, ax
inc ebx
mov edi, dword [esi]
test ecx, ecx
mov ecx, dword [edx]
mov eax, ecx
je 0x50ccd4
sub eax, edi
dec eax
cmp edi, ecx
sbb ecx, ecx
inc ecx
jmp 0x50ccdc
sub eax, edi
cmp ecx, edi
sbb ecx, ecx
neg ecx
mov dword [edx], eax
add esi, 4
add edx, 4
dec ebx
jne 0x50ccc0
mov eax, dword [esp + 0x10]
mov ebx, dword [esp + 0x111c]
mov edx, dword [ebp + 0x300]
mov eax, dword [eax + ebx - 4]
sub eax, edx
test eax, eax
jg 0x50cd56
jne 0x50cd98
mov ecx, dword [esp + 0x14]
mov eax, dword [ecx]
mov ecx, dword [ebp + 0x380]
cmp eax, ecx
ja 0x50cd56
jne 0x50cd98
mov di, word [ebp]
mov edx, dword [ebp + 0x1478]
movsx eax, di
shl eax, 2
mov ecx, dword [edx + eax - 4]
lea esi, [eax + ebx - 4]
lea edx, [edx + eax - 4]
mov eax, dword [esi]
cmp eax, ecx
jb 0x50cd98
sub edx, 4
sub esi, 4
cmp eax, ecx
ja 0x50cd56
dec edi
test di, di
je 0x50cd56
mov eax, dword [esi]
mov ecx, dword [edx]
cmp eax, ecx
jae 0x50cd3c
jmp 0x50cd98
mov ax, word [ebp]
mov esi, dword [ebp + 0x1478]
xor ecx, ecx
mov di, ax
dec eax
mov edx, ebx
test di, di
je 0x50cd98
movsx ebx, ax
inc ebx
mov edi, dword [esi]
test ecx, ecx
mov ecx, dword [edx]
mov eax, ecx
je 0x50cd85
sub eax, edi
dec eax
cmp edi, ecx
sbb ecx, ecx
inc ecx
jmp 0x50cd8d
sub eax, edi
cmp ecx, edi
sbb ecx, ecx
neg ecx
mov dword [edx], eax
add esi, 4
add edx, 4
dec ebx
jne 0x50cd71
mov eax, dword [esp + 0x10]
mov ebx, dword [esp + 0x111c]
mov edx, dword [ebp + 0x2fc]
mov eax, dword [eax + ebx - 4]
sub eax, edx
test eax, eax
jg 0x50ce07
jne 0x50ce49
mov ecx, dword [esp + 0x14]
mov eax, dword [ecx]
mov ecx, dword [ebp + 0x37c]
cmp eax, ecx
ja 0x50ce07
jne 0x50ce49
mov di, word [ebp]
mov edx, dword [ebp + 0x1474]
movsx eax, di
shl eax, 2
mov ecx, dword [edx + eax - 4]
lea esi, [eax + ebx - 4]
lea edx, [edx + eax - 4]
mov eax, dword [esi]
cmp eax, ecx
jb 0x50ce49
sub edx, 4
sub esi, 4
cmp eax, ecx
ja 0x50ce07
dec edi
test di, di
je 0x50ce07
mov eax, dword [esi]
mov ecx, dword [edx]
cmp eax, ecx
jae 0x50cded
jmp 0x50ce49
mov ax, word [ebp]
mov esi, dword [ebp + 0x1474]
xor ecx, ecx
mov di, ax
dec eax
mov edx, ebx
test di, di
je 0x50ce49
movsx ebx, ax
inc ebx
mov edi, dword [esi]
test ecx, ecx
mov ecx, dword [edx]
mov eax, ecx
je 0x50ce36
sub eax, edi
dec eax
cmp edi, ecx
sbb ecx, ecx
inc ecx
jmp 0x50ce3e
sub eax, edi
cmp ecx, edi
sbb ecx, ecx
neg ecx
mov dword [edx], eax
add esi, 4
add edx, 4
dec ebx
jne 0x50ce22
mov eax, dword [esp + 0x10]
mov ebx, dword [esp + 0x111c]
mov edx, dword [ebp + 0x2f8]
mov eax, dword [eax + ebx - 4]
sub eax, edx
test eax, eax
jg 0x50ceb8
jne 0x50cefa
mov ecx, dword [esp + 0x14]
mov eax, dword [ecx]
mov ecx, dword [ebp + 0x378]
cmp eax, ecx
ja 0x50ceb8
jne 0x50cefa
mov di, word [ebp]
mov edx, dword [ebp + 0x1470]
movsx eax, di
shl eax, 2
mov ecx, dword [edx + eax - 4]
lea esi, [eax + ebx - 4]
lea edx, [edx + eax - 4]
mov eax, dword [esi]
cmp eax, ecx
jb 0x50cefa
sub edx, 4
sub esi, 4
cmp eax, ecx
ja 0x50ceb8
dec edi
test di, di
je 0x50ceb8
mov eax, dword [esi]
mov ecx, dword [edx]
cmp eax, ecx
jae 0x50ce9e
jmp 0x50cefa
mov ax, word [ebp]
mov esi, dword [ebp + 0x1470]
xor ecx, ecx
mov di, ax
dec eax
mov edx, ebx
test di, di
je 0x50cefa
movsx ebx, ax
inc ebx
mov edi, dword [esi]
test ecx, ecx
mov ecx, dword [edx]
mov eax, ecx
je 0x50cee7
sub eax, edi
dec eax
cmp edi, ecx
sbb ecx, ecx
inc ecx
jmp 0x50ceef
sub eax, edi
cmp ecx, edi
sbb ecx, ecx
neg ecx
mov dword [edx], eax
add esi, 4
add edx, 4
dec ebx
jne 0x50ced3
mov eax, dword [esp + 0x10]
mov ebx, dword [esp + 0x111c]
mov edx, dword [ebp + 0x2f4]
mov eax, dword [eax + ebx - 4]
sub eax, edx
test eax, eax
jg 0x50cf69
jne 0x50cfab
mov ecx, dword [esp + 0x14]
mov eax, dword [ecx]
mov ecx, dword [ebp + 0x374]
cmp eax, ecx
ja 0x50cf69
jne 0x50cfab
mov di, word [ebp]
mov edx, dword [ebp + 0x146c]
movsx eax, di
shl eax, 2
mov ecx, dword [edx + eax - 4]
lea esi, [eax + ebx - 4]
lea edx, [edx + eax - 4]
mov eax, dword [esi]
cmp eax, ecx
jb 0x50cfab
sub edx, 4
sub esi, 4
cmp eax, ecx
ja 0x50cf69
dec edi
test di, di
je 0x50cf69
mov eax, dword [esi]
mov ecx, dword [edx]
cmp eax, ecx
jae 0x50cf4f
jmp 0x50cfab
mov ax, word [ebp]
mov esi, dword [ebp + 0x146c]
xor ecx, ecx
mov di, ax
dec eax
mov edx, ebx
test di, di
je 0x50cfab
movsx ebx, ax
inc ebx
mov edi, dword [esi]
test ecx, ecx
mov ecx, dword [edx]
mov eax, ecx
je 0x50cf98
sub eax, edi
dec eax
cmp edi, ecx
sbb ecx, ecx
inc ecx
jmp 0x50cfa0
sub eax, edi
cmp ecx, edi
sbb ecx, ecx
neg ecx
mov dword [edx], eax
add esi, 4
add edx, 4
dec ebx
jne 0x50cf84
mov eax, dword [esp + 0x10]
mov ebx, dword [esp + 0x111c]
mov edx, dword [ebp + 0x2f0]
mov eax, dword [eax + ebx - 4]
sub eax, edx
test eax, eax
jg 0x50d01a
jne 0x50d05c
mov ecx, dword [esp + 0x14]
mov eax, dword [ecx]
mov ecx, dword [ebp + 0x370]
cmp eax, ecx
ja 0x50d01a
jne 0x50d05c
mov di, word [ebp]
mov edx, dword [ebp + 0x1468]
movsx eax, di
shl eax, 2
mov ecx, dword [edx + eax - 4]
lea esi, [eax + ebx - 4]
lea edx, [edx + eax - 4]
mov eax, dword [esi]
cmp eax, ecx
jb 0x50d05c
sub edx, 4
sub esi, 4
cmp eax, ecx
ja 0x50d01a
dec edi
test di, di
je 0x50d01a
mov eax, dword [esi]
mov ecx, dword [edx]
cmp eax, ecx
jae 0x50d000
jmp 0x50d05c
mov ax, word [ebp]
mov esi, dword [ebp + 0x1468]
xor ecx, ecx
mov di, ax
dec eax
mov edx, ebx
test di, di
je 0x50d05c
movsx ebx, ax
inc ebx
mov edi, dword [esi]
test ecx, ecx
mov ecx, dword [edx]
mov eax, ecx
je 0x50d049
sub eax, edi
dec eax
cmp edi, ecx
sbb ecx, ecx
inc ecx
jmp 0x50d051
sub eax, edi
cmp ecx, edi
sbb ecx, ecx
neg ecx
mov dword [edx], eax
add esi, 4
add edx, 4
dec ebx
jne 0x50d035
mov eax, dword [esp + 0x10]
mov ebx, dword [esp + 0x111c]
mov edx, dword [ebp + 0x2ec]
mov eax, dword [eax + ebx - 4]
sub eax, edx
test eax, eax
jg 0x50d0cb
jne 0x50d10d
mov ecx, dword [esp + 0x14]
mov eax, dword [ecx]
mov ecx, dword [ebp + 0x36c]
cmp eax, ecx
ja 0x50d0cb
jne 0x50d10d
mov di, word [ebp]
mov edx, dword [ebp + 0x1464]
movsx eax, di
shl eax, 2
mov ecx, dword [edx + eax - 4]
lea esi, [eax + ebx - 4]
lea edx, [edx + eax - 4]
mov eax, dword [esi]
cmp eax, ecx
jb 0x50d10d
sub edx, 4
sub esi, 4
cmp eax, ecx
ja 0x50d0cb
dec edi
test di, di
je 0x50d0cb
mov eax, dword [esi]
mov ecx, dword [edx]
cmp eax, ecx
jae 0x50d0b1
jmp 0x50d10d
mov ax, word [ebp]
mov esi, dword [ebp + 0x1464]
xor ecx, ecx
mov di, ax
dec eax
mov edx, ebx
test di, di
je 0x50d10d
movsx ebx, ax
inc ebx
mov edi, dword [esi]
test ecx, ecx
mov ecx, dword [edx]
mov eax, ecx
je 0x50d0fa
sub eax, edi
dec eax
cmp edi, ecx
sbb ecx, ecx
inc ecx
jmp 0x50d102
sub eax, edi
cmp ecx, edi
sbb ecx, ecx
neg ecx
mov dword [edx], eax
add esi, 4
add edx, 4
dec ebx
jne 0x50d0e6
mov eax, dword [esp + 0x10]
mov ebx, dword [esp + 0x111c]
mov edx, dword [ebp + 0x2e8]
mov eax, dword [eax + ebx - 4]
sub eax, edx
test eax, eax
jg 0x50d17c
jne 0x50d1be
mov ecx, dword [esp + 0x14]
mov eax, dword [ecx]
mov ecx, dword [ebp + 0x368]
cmp eax, ecx
ja 0x50d17c
jne 0x50d1be
mov di, word [ebp]
mov edx, dword [ebp + 0x1460]
movsx eax, di
shl eax, 2
mov ecx, dword [edx + eax - 4]
lea esi, [eax + ebx - 4]
lea edx, [edx + eax - 4]
mov eax, dword [esi]
cmp eax, ecx
jb 0x50d1be
sub edx, 4
sub esi, 4
cmp eax, ecx
ja 0x50d17c
dec edi
test di, di
je 0x50d17c
mov eax, dword [esi]
mov ecx, dword [edx]
cmp eax, ecx
jae 0x50d162
jmp 0x50d1be
mov ax, word [ebp]
mov esi, dword [ebp + 0x1460]
xor ecx, ecx
mov di, ax
dec eax
mov edx, ebx
test di, di
je 0x50d1be
movsx ebx, ax
inc ebx
mov edi, dword [esi]
test ecx, ecx
mov ecx, dword [edx]
mov eax, ecx
je 0x50d1ab
sub eax, edi
dec eax
cmp edi, ecx
sbb ecx, ecx
inc ecx
jmp 0x50d1b3
sub eax, edi
cmp ecx, edi
sbb ecx, ecx
neg ecx
mov dword [edx], eax
add esi, 4
add edx, 4
dec ebx
jne 0x50d197
mov eax, dword [esp + 0x10]
mov ebx, dword [esp + 0x111c]
mov edx, dword [ebp + 0x2e4]
mov eax, dword [eax + ebx - 4]
sub eax, edx
test eax, eax
jg 0x50d22d
jne 0x50d26f
mov ecx, dword [esp + 0x14]
mov eax, dword [ecx]
mov ecx, dword [ebp + 0x364]
cmp eax, ecx
ja 0x50d22d
jne 0x50d26f
mov di, word [ebp]
mov edx, dword [ebp + 0x145c]
movsx eax, di
shl eax, 2
mov ecx, dword [edx + eax - 4]
lea esi, [eax + ebx - 4]
lea edx, [edx + eax - 4]
mov eax, dword [esi]
cmp eax, ecx
jb 0x50d26f
sub edx, 4
sub esi, 4
cmp eax, ecx
ja 0x50d22d
dec edi
test di, di
je 0x50d22d
mov eax, dword [esi]
mov ecx, dword [edx]
cmp eax, ecx
jae 0x50d213
jmp 0x50d26f
mov ax, word [ebp]
mov esi, dword [ebp + 0x145c]
xor ecx, ecx
mov di, ax
dec eax
mov edx, ebx
test di, di
je 0x50d26f
movsx ebx, ax
inc ebx
mov edi, dword [esi]
test ecx, ecx
mov ecx, dword [edx]
mov eax, ecx
je 0x50d25c
sub eax, edi
dec eax
cmp edi, ecx
sbb ecx, ecx
inc ecx
jmp 0x50d264
sub eax, edi
cmp ecx, edi
sbb ecx, ecx
neg ecx
mov dword [edx], eax
add esi, 4
add edx, 4
dec ebx
jne 0x50d248
mov eax, dword [esp + 0x10]
mov ebx, dword [esp + 0x111c]
mov edx, dword [ebp + 0x2e0]
mov eax, dword [eax + ebx - 4]
sub eax, edx
test eax, eax
jg 0x50d2de
jne 0x50d320
mov ecx, dword [esp + 0x14]
mov eax, dword [ecx]
mov ecx, dword [ebp + 0x360]
cmp eax, ecx
ja 0x50d2de
jne 0x50d320
mov di, word [ebp]
mov edx, dword [ebp + 0x1458]
movsx eax, di
shl eax, 2
mov ecx, dword [edx + eax - 4]
lea esi, [eax + ebx - 4]
lea edx, [edx + eax - 4]
mov eax, dword [esi]
cmp eax, ecx
jb 0x50d320
sub edx, 4
sub esi, 4
cmp eax, ecx
ja 0x50d2de
dec edi
test di, di
je 0x50d2de
mov eax, dword [esi]
mov ecx, dword [edx]
cmp eax, ecx
jae 0x50d2c4
jmp 0x50d320
mov ax, word [ebp]
mov esi, dword [ebp + 0x1458]
xor ecx, ecx
mov di, ax
dec eax
mov edx, ebx
test di, di
je 0x50d320
movsx ebx, ax
inc ebx
mov edi, dword [esi]
test ecx, ecx
mov ecx, dword [edx]
mov eax, ecx
je 0x50d30d
sub eax, edi
dec eax
cmp edi, ecx
sbb ecx, ecx
inc ecx
jmp 0x50d315
sub eax, edi
cmp ecx, edi
sbb ecx, ecx
neg ecx
mov dword [edx], eax
add esi, 4
add edx, 4
dec ebx
jne 0x50d2f9
mov eax, dword [esp + 0x10]
mov ebx, dword [esp + 0x111c]
mov edx, dword [ebp + 0x2dc]
mov eax, dword [eax + ebx - 4]
sub eax, edx
test eax, eax
jg 0x50d38f
jne 0x50d3d1
mov ecx, dword [esp + 0x14]
mov eax, dword [ecx]
mov ecx, dword [ebp + 0x35c]
cmp eax, ecx
ja 0x50d38f
jne 0x50d3d1
mov di, word [ebp]
mov edx, dword [ebp + 0x1454]
movsx eax, di
shl eax, 2
mov ecx, dword [edx + eax - 4]
lea esi, [eax + ebx - 4]
lea edx, [edx + eax - 4]
mov eax, dword [esi]
cmp eax, ecx
jb 0x50d3d1
sub edx, 4
sub esi, 4
cmp eax, ecx
ja 0x50d38f
dec edi
test di, di
je 0x50d38f
mov eax, dword [esi]
mov ecx, dword [edx]
cmp eax, ecx
jae 0x50d375
jmp 0x50d3d1
mov ax, word [ebp]
mov esi, dword [ebp + 0x1454]
xor ecx, ecx
mov di, ax
dec eax
mov edx, ebx
test di, di
je 0x50d3d1
movsx ebx, ax
inc ebx
mov edi, dword [esi]
test ecx, ecx
mov ecx, dword [edx]
mov eax, ecx
je 0x50d3be
sub eax, edi
dec eax
cmp edi, ecx
sbb ecx, ecx
inc ecx
jmp 0x50d3c6
sub eax, edi
cmp ecx, edi
sbb ecx, ecx
neg ecx
mov dword [edx], eax
add esi, 4
add edx, 4
dec ebx
jne 0x50d3aa
mov eax, dword [esp + 0x10]
mov ebx, dword [esp + 0x111c]
mov edx, dword [ebp + 0x2d8]
mov eax, dword [eax + ebx - 4]
sub eax, edx
test eax, eax
jg 0x50d440
jne 0x50d482
mov ecx, dword [esp + 0x14]
mov eax, dword [ecx]
mov ecx, dword [ebp + 0x358]
cmp eax, ecx
ja 0x50d440
jne 0x50d482
mov di, word [ebp]
mov edx, dword [ebp + 0x1450]
movsx eax, di
shl eax, 2
mov ecx, dword [edx + eax - 4]
lea esi, [eax + ebx - 4]
lea edx, [edx + eax - 4]
mov eax, dword [esi]
cmp eax, ecx
jb 0x50d482
sub edx, 4
sub esi, 4
cmp eax, ecx
ja 0x50d440
dec edi
test di, di
je 0x50d440
mov eax, dword [esi]
mov ecx, dword [edx]
cmp eax, ecx
jae 0x50d426
jmp 0x50d482
mov ax, word [ebp]
mov esi, dword [ebp + 0x1450]
xor ecx, ecx
mov di, ax
dec eax
mov edx, ebx
test di, di
je 0x50d482
movsx ebx, ax
inc ebx
mov edi, dword [esi]
test ecx, ecx
mov ecx, dword [edx]
mov eax, ecx
je 0x50d46f
sub eax, edi
dec eax
cmp edi, ecx
sbb ecx, ecx
inc ecx
jmp 0x50d477
sub eax, edi
cmp ecx, edi
sbb ecx, ecx
neg ecx
mov dword [edx], eax
add esi, 4
add edx, 4
dec ebx
jne 0x50d45b
mov eax, dword [esp + 0x10]
mov ebx, dword [esp + 0x111c]
mov edx, dword [ebp + 0x2d4]
mov eax, dword [eax + ebx - 4]
sub eax, edx
test eax, eax
jg 0x50d4f1
jne 0x50d533
mov ecx, dword [esp + 0x14]
mov eax, dword [ecx]
mov ecx, dword [ebp + 0x354]
cmp eax, ecx
ja 0x50d4f1
jne 0x50d533
mov di, word [ebp]
mov edx, dword [ebp + 0x144c]
movsx eax, di
shl eax, 2
mov ecx, dword [edx + eax - 4]
lea esi, [eax + ebx - 4]
lea edx, [edx + eax - 4]
mov eax, dword [esi]
cmp eax, ecx
jb 0x50d533
sub edx, 4
sub esi, 4
cmp eax, ecx
ja 0x50d4f1
dec edi
test di, di
je 0x50d4f1
mov eax, dword [esi]
mov ecx, dword [edx]
cmp eax, ecx
jae 0x50d4d7
jmp 0x50d533
mov ax, word [ebp]
mov esi, dword [ebp + 0x144c]
xor ecx, ecx
mov di, ax
dec eax
mov edx, ebx
test di, di
je 0x50d533
movsx ebx, ax
inc ebx
mov edi, dword [esi]
test ecx, ecx
mov ecx, dword [edx]
mov eax, ecx
je 0x50d520
sub eax, edi
dec eax
cmp edi, ecx
sbb ecx, ecx
inc ecx
jmp 0x50d528
sub eax, edi
cmp ecx, edi
sbb ecx, ecx
neg ecx
mov dword [edx], eax
add esi, 4
add edx, 4
dec ebx
jne 0x50d50c
mov eax, dword [esp + 0x10]
mov ebx, dword [esp + 0x111c]
mov edx, dword [ebp + 0x2d0]
mov eax, dword [eax + ebx - 4]
sub eax, edx
test eax, eax
jg 0x50d5a2
jne 0x50d5e4
mov ecx, dword [esp + 0x14]
mov eax, dword [ecx]
mov ecx, dword [ebp + 0x350]
cmp eax, ecx
ja 0x50d5a2
jne 0x50d5e4
mov di, word [ebp]
mov edx, dword [ebp + 0x1448]
movsx eax, di
shl eax, 2
mov ecx, dword [edx + eax - 4]
lea esi, [eax + ebx - 4]
lea edx, [edx + eax - 4]
mov eax, dword [esi]
cmp eax, ecx
jb 0x50d5e4
sub edx, 4
sub esi, 4
cmp eax, ecx
ja 0x50d5a2
dec edi
test di, di
je 0x50d5a2
mov eax, dword [esi]
mov ecx, dword [edx]
cmp eax, ecx
jae 0x50d588
jmp 0x50d5e4
mov ax, word [ebp]
mov esi, dword [ebp + 0x1448]
xor ecx, ecx
mov di, ax
dec eax
mov edx, ebx
test di, di
je 0x50d5e4
movsx ebx, ax
inc ebx
mov edi, dword [esi]
test ecx, ecx
mov ecx, dword [edx]
mov eax, ecx
je 0x50d5d1
sub eax, edi
dec eax
cmp edi, ecx
sbb ecx, ecx
inc ecx
jmp 0x50d5d9
sub eax, edi
cmp ecx, edi
sbb ecx, ecx
neg ecx
mov dword [edx], eax
add esi, 4
add edx, 4
dec ebx
jne 0x50d5bd
mov eax, dword [esp + 0x10]
mov ebx, dword [esp + 0x111c]
mov edx, dword [ebp + 0x2cc]
mov eax, dword [eax + ebx - 4]
sub eax, edx
test eax, eax
jg 0x50d653
jne 0x50d695
mov ecx, dword [esp + 0x14]
mov eax, dword [ecx]
mov ecx, dword [ebp + 0x34c]
cmp eax, ecx
ja 0x50d653
jne 0x50d695
mov di, word [ebp]
mov edx, dword [ebp + 0x1444]
movsx eax, di
shl eax, 2
mov ecx, dword [edx + eax - 4]
lea esi, [eax + ebx - 4]
lea edx, [edx + eax - 4]
mov eax, dword [esi]
cmp eax, ecx
jb 0x50d695
sub edx, 4
sub esi, 4
cmp eax, ecx
ja 0x50d653
dec edi
test di, di
je 0x50d653
mov eax, dword [esi]
mov ecx, dword [edx]
cmp eax, ecx
jae 0x50d639
jmp 0x50d695
mov ax, word [ebp]
mov esi, dword [ebp + 0x1444]
xor ecx, ecx
mov di, ax
dec eax
mov edx, ebx
test di, di
je 0x50d695
movsx ebx, ax
inc ebx
mov edi, dword [esi]
test ecx, ecx
mov ecx, dword [edx]
mov eax, ecx
je 0x50d682
sub eax, edi
dec eax
cmp edi, ecx
sbb ecx, ecx
inc ecx
jmp 0x50d68a
sub eax, edi
cmp ecx, edi
sbb ecx, ecx
neg ecx
mov dword [edx], eax
add esi, 4
add edx, 4
dec ebx
jne 0x50d66e
mov eax, dword [esp + 0x10]
mov ebx, dword [esp + 0x111c]
mov edx, dword [ebp + 0x2c8]
mov eax, dword [eax + ebx - 4]
sub eax, edx
test eax, eax
jg 0x50d704
jne 0x50d746
mov ecx, dword [esp + 0x14]
mov eax, dword [ecx]
mov ecx, dword [ebp + 0x348]
cmp eax, ecx
ja 0x50d704
jne 0x50d746
mov di, word [ebp]
mov edx, dword [ebp + 0x1440]
movsx eax, di
shl eax, 2
mov ecx, dword [edx + eax - 4]
lea esi, [eax + ebx - 4]
lea edx, [edx + eax - 4]
mov eax, dword [esi]
cmp eax, ecx
jb 0x50d746
sub edx, 4
sub esi, 4
cmp eax, ecx
ja 0x50d704
dec edi
test di, di
je 0x50d704
mov eax, dword [esi]
mov ecx, dword [edx]
cmp eax, ecx
jae 0x50d6ea
jmp 0x50d746
mov ax, word [ebp]
mov esi, dword [ebp + 0x1440]
xor ecx, ecx
mov di, ax
dec eax
mov edx, ebx
test di, di
je 0x50d746
movsx ebx, ax
inc ebx
mov edi, dword [esi]
test ecx, ecx
mov ecx, dword [edx]
mov eax, ecx
je 0x50d733
sub eax, edi
dec eax
cmp edi, ecx
sbb ecx, ecx
inc ecx
jmp 0x50d73b
sub eax, edi
cmp ecx, edi
sbb ecx, ecx
neg ecx
mov dword [edx], eax
add esi, 4
add edx, 4
dec ebx
jne 0x50d71f
mov eax, dword [esp + 0x10]
mov ebx, dword [esp + 0x111c]
mov edx, dword [ebp + 0x2c4]
mov eax, dword [eax + ebx - 4]
sub eax, edx
test eax, eax
jg 0x50d7b5
jne 0x50d7f7
mov ecx, dword [esp + 0x14]
mov eax, dword [ecx]
mov ecx, dword [ebp + 0x344]
cmp eax, ecx
ja 0x50d7b5
jne 0x50d7f7
mov di, word [ebp]
mov edx, dword [ebp + 0x143c]
movsx eax, di
shl eax, 2
mov ecx, dword [edx + eax - 4]
lea esi, [eax + ebx - 4]
lea edx, [edx + eax - 4]
mov eax, dword [esi]
cmp eax, ecx
jb 0x50d7f7
sub edx, 4
sub esi, 4
cmp eax, ecx
ja 0x50d7b5
dec edi
test di, di
je 0x50d7b5
mov eax, dword [esi]
mov ecx, dword [edx]
cmp eax, ecx
jae 0x50d79b
jmp 0x50d7f7
mov ax, word [ebp]
mov esi, dword [ebp + 0x143c]
xor ecx, ecx
mov di, ax
dec eax
mov edx, ebx
test di, di
je 0x50d7f7
movsx ebx, ax
inc ebx
mov edi, dword [esi]
test ecx, ecx
mov ecx, dword [edx]
mov eax, ecx
je 0x50d7e4
sub eax, edi
dec eax
cmp edi, ecx
sbb ecx, ecx
inc ecx
jmp 0x50d7ec
sub eax, edi
cmp ecx, edi
sbb ecx, ecx
neg ecx
mov dword [edx], eax
add esi, 4
add edx, 4
dec ebx
jne 0x50d7d0
mov eax, dword [esp + 0x10]
mov ebx, dword [esp + 0x111c]
mov edx, dword [ebp + 0x2c0]
mov eax, dword [eax + ebx - 4]
sub eax, edx
test eax, eax
jg 0x50d866
jne 0x50d8a8
mov ecx, dword [esp + 0x14]
mov eax, dword [ecx]
mov ecx, dword [ebp + 0x340]
cmp eax, ecx
ja 0x50d866
jne 0x50d8a8
mov di, word [ebp]
mov edx, dword [ebp + 0x1438]
movsx eax, di
shl eax, 2
mov ecx, dword [edx + eax - 4]
lea esi, [eax + ebx - 4]
lea edx, [edx + eax - 4]
mov eax, dword [esi]
cmp eax, ecx
jb 0x50d8a8
sub edx, 4
sub esi, 4
cmp eax, ecx
ja 0x50d866
dec edi
test di, di
je 0x50d866
mov eax, dword [esi]
mov ecx, dword [edx]
cmp eax, ecx
jae 0x50d84c
jmp 0x50d8a8
mov ax, word [ebp]
mov esi, dword [ebp + 0x1438]
xor ecx, ecx
mov di, ax
dec eax
mov edx, ebx
test di, di
je 0x50d8a8
movsx ebx, ax
inc ebx
mov edi, dword [esi]
test ecx, ecx
mov ecx, dword [edx]
mov eax, ecx
je 0x50d895
sub eax, edi
dec eax
cmp edi, ecx
sbb ecx, ecx
inc ecx
jmp 0x50d89d
sub eax, edi
cmp ecx, edi
sbb ecx, ecx
neg ecx
mov dword [edx], eax
add esi, 4
add edx, 4
dec ebx
jne 0x50d881
mov eax, dword [esp + 0x10]
mov ebx, dword [esp + 0x111c]
mov edx, dword [ebp + 0x2bc]
mov eax, dword [eax + ebx - 4]
sub eax, edx
test eax, eax
jg 0x50d917
jne 0x50d959
mov ecx, dword [esp + 0x14]
mov eax, dword [ecx]
mov ecx, dword [ebp + 0x33c]
cmp eax, ecx
ja 0x50d917
jne 0x50d959
mov di, word [ebp]
mov edx, dword [ebp + 0x1434]
movsx eax, di
shl eax, 2
mov ecx, dword [edx + eax - 4]
lea esi, [eax + ebx - 4]
lea edx, [edx + eax - 4]
mov eax, dword [esi]
cmp eax, ecx
jb 0x50d959
sub edx, 4
sub esi, 4
cmp eax, ecx
ja 0x50d917
dec edi
test di, di
je 0x50d917
mov eax, dword [esi]
mov ecx, dword [edx]
cmp eax, ecx
jae 0x50d8fd
jmp 0x50d959
mov ax, word [ebp]
mov esi, dword [ebp + 0x1434]
xor ecx, ecx
mov di, ax
dec eax
mov edx, ebx
test di, di
je 0x50d959
movsx ebx, ax
inc ebx
mov edi, dword [esi]
test ecx, ecx
mov ecx, dword [edx]
mov eax, ecx
je 0x50d946
sub eax, edi
dec eax
cmp edi, ecx
sbb ecx, ecx
inc ecx
jmp 0x50d94e
sub eax, edi
cmp ecx, edi
sbb ecx, ecx
neg ecx
mov dword [edx], eax
add esi, 4
add edx, 4
dec ebx
jne 0x50d932
mov eax, dword [esp + 0x10]
mov ebx, dword [esp + 0x111c]
mov edx, dword [ebp + 0x2b8]
mov eax, dword [eax + ebx - 4]
sub eax, edx
test eax, eax
jg 0x50d9c8
jne 0x50da0a
mov ecx, dword [esp + 0x14]
mov eax, dword [ecx]
mov ecx, dword [ebp + 0x338]
cmp eax, ecx
ja 0x50d9c8
jne 0x50da0a
mov di, word [ebp]
mov edx, dword [ebp + 0x1430]
movsx eax, di
shl eax, 2
mov ecx, dword [edx + eax - 4]
lea esi, [eax + ebx - 4]
lea edx, [edx + eax - 4]
mov eax, dword [esi]
cmp eax, ecx
jb 0x50da0a
sub edx, 4
sub esi, 4
cmp eax, ecx
ja 0x50d9c8
dec edi
test di, di
je 0x50d9c8
mov eax, dword [esi]
mov ecx, dword [edx]
cmp eax, ecx
jae 0x50d9ae
jmp 0x50da0a
mov ax, word [ebp]
mov esi, dword [ebp + 0x1430]
xor ecx, ecx
mov di, ax
dec eax
mov edx, ebx
test di, di
je 0x50da0a
movsx ebx, ax
inc ebx
mov edi, dword [esi]
test ecx, ecx
mov ecx, dword [edx]
mov eax, ecx
je 0x50d9f7
sub eax, edi
dec eax
cmp edi, ecx
sbb ecx, ecx
inc ecx
jmp 0x50d9ff
sub eax, edi
cmp ecx, edi
sbb ecx, ecx
neg ecx
mov dword [edx], eax
add esi, 4
add edx, 4
dec ebx
jne 0x50d9e3
mov eax, dword [esp + 0x10]
mov ebx, dword [esp + 0x111c]
mov edx, dword [ebp + 0x2b4]
mov eax, dword [eax + ebx - 4]
sub eax, edx
test eax, eax
jg 0x50da79
jne 0x50dabb
mov ecx, dword [esp + 0x14]
mov eax, dword [ecx]
mov ecx, dword [ebp + 0x334]
cmp eax, ecx
ja 0x50da79
jne 0x50dabb
mov di, word [ebp]
mov edx, dword [ebp + 0x142c]
movsx eax, di
shl eax, 2
mov ecx, dword [edx + eax - 4]
lea esi, [eax + ebx - 4]
lea edx, [edx + eax - 4]
mov eax, dword [esi]
cmp eax, ecx
jb 0x50dabb
sub edx, 4
sub esi, 4
cmp eax, ecx
ja 0x50da79
dec edi
test di, di
je 0x50da79
mov eax, dword [esi]
mov ecx, dword [edx]
cmp eax, ecx
jae 0x50da5f
jmp 0x50dabb
mov ax, word [ebp]
mov esi, dword [ebp + 0x142c]
xor ecx, ecx
mov di, ax
dec eax
mov edx, ebx
test di, di
je 0x50dabb
movsx ebx, ax
inc ebx
mov edi, dword [esi]
test ecx, ecx
mov ecx, dword [edx]
mov eax, ecx
je 0x50daa8
sub eax, edi
dec eax
cmp edi, ecx
sbb ecx, ecx
inc ecx
jmp 0x50dab0
sub eax, edi
cmp ecx, edi
sbb ecx, ecx
neg ecx
mov dword [edx], eax
add esi, 4
add edx, 4
dec ebx
jne 0x50da94
mov eax, dword [esp + 0x10]
mov ebx, dword [esp + 0x111c]
mov edx, dword [ebp + 0x2b0]
mov eax, dword [eax + ebx - 4]
sub eax, edx
test eax, eax
jg 0x50db2a
jne 0x50db6c
mov ecx, dword [esp + 0x14]
mov eax, dword [ecx]
mov ecx, dword [ebp + 0x330]
cmp eax, ecx
ja 0x50db2a
jne 0x50db6c
mov di, word [ebp]
mov edx, dword [ebp + 0x1428]
movsx eax, di
shl eax, 2
mov ecx, dword [edx + eax - 4]
lea esi, [eax + ebx - 4]
lea edx, [edx + eax - 4]
mov eax, dword [esi]
cmp eax, ecx
jb 0x50db6c
sub edx, 4
sub esi, 4
cmp eax, ecx
ja 0x50db2a
dec edi
test di, di
je 0x50db2a
mov eax, dword [esi]
mov ecx, dword [edx]
cmp eax, ecx
jae 0x50db10
jmp 0x50db6c
mov ax, word [ebp]
mov esi, dword [ebp + 0x1428]
xor ecx, ecx
mov di, ax
dec eax
mov edx, ebx
test di, di
je 0x50db6c
movsx ebx, ax
inc ebx
mov edi, dword [esi]
test ecx, ecx
mov ecx, dword [edx]
mov eax, ecx
je 0x50db59
sub eax, edi
dec eax
cmp edi, ecx
sbb ecx, ecx
inc ecx
jmp 0x50db61
sub eax, edi
cmp ecx, edi
sbb ecx, ecx
neg ecx
mov dword [edx], eax
add esi, 4
add edx, 4
dec ebx
jne 0x50db45
mov eax, dword [esp + 0x10]
mov ebx, dword [esp + 0x111c]
mov edx, dword [ebp + 0x2ac]
mov eax, dword [eax + ebx - 4]
sub eax, edx
test eax, eax
jg 0x50dbdb
jne 0x50dc1d
mov ecx, dword [esp + 0x14]
mov eax, dword [ecx]
mov ecx, dword [ebp + 0x32c]
cmp eax, ecx
ja 0x50dbdb
jne 0x50dc1d
mov di, word [ebp]
mov edx, dword [ebp + 0x1424]
movsx eax, di
shl eax, 2
mov ecx, dword [edx + eax - 4]
lea esi, [eax + ebx - 4]
lea edx, [edx + eax - 4]
mov eax, dword [esi]
cmp eax, ecx
jb 0x50dc1d
sub edx, 4
sub esi, 4
cmp eax, ecx
ja 0x50dbdb
dec edi
test di, di
je 0x50dbdb
mov eax, dword [esi]
mov ecx, dword [edx]
cmp eax, ecx
jae 0x50dbc1
jmp 0x50dc1d
mov ax, word [ebp]
mov esi, dword [ebp + 0x1424]
xor ecx, ecx
mov di, ax
dec eax
mov edx, ebx
test di, di
je 0x50dc1d
movsx ebx, ax
inc ebx
mov edi, dword [esi]
test ecx, ecx
mov ecx, dword [edx]
mov eax, ecx
je 0x50dc0a
sub eax, edi
dec eax
cmp edi, ecx
sbb ecx, ecx
inc ecx
jmp 0x50dc12
sub eax, edi
cmp ecx, edi
sbb ecx, ecx
neg ecx
mov dword [edx], eax
add esi, 4
add edx, 4
dec ebx
jne 0x50dbf6
mov eax, dword [esp + 0x10]
mov ebx, dword [esp + 0x111c]
mov edx, dword [ebp + 0x2a8]
mov eax, dword [eax + ebx - 4]
sub eax, edx
test eax, eax
jg 0x50dc8c
jne 0x50dcce
mov ecx, dword [esp + 0x14]
mov eax, dword [ecx]
mov ecx, dword [ebp + 0x328]
cmp eax, ecx
ja 0x50dc8c
jne 0x50dcce
mov di, word [ebp]
mov edx, dword [ebp + 0x1420]
movsx eax, di
shl eax, 2
mov ecx, dword [edx + eax - 4]
lea esi, [eax + ebx - 4]
lea edx, [edx + eax - 4]
mov eax, dword [esi]
cmp eax, ecx
jb 0x50dcce
sub edx, 4
sub esi, 4
cmp eax, ecx
ja 0x50dc8c
dec edi
test di, di
je 0x50dc8c
mov eax, dword [esi]
mov ecx, dword [edx]
cmp eax, ecx
jae 0x50dc72
jmp 0x50dcce
mov ax, word [ebp]
mov esi, dword [ebp + 0x1420]
xor ecx, ecx
mov di, ax
dec eax
mov edx, ebx
test di, di
je 0x50dcce
movsx ebx, ax
inc ebx
mov edi, dword [esi]
test ecx, ecx
mov ecx, dword [edx]
mov eax, ecx
je 0x50dcbb
sub eax, edi
dec eax
cmp edi, ecx
sbb ecx, ecx
inc ecx
jmp 0x50dcc3
sub eax, edi
cmp ecx, edi
sbb ecx, ecx
neg ecx
mov dword [edx], eax
add esi, 4
add edx, 4
dec ebx
jne 0x50dca7
mov eax, dword [esp + 0x1124]
test dword [eax], 0x80000000
je 0x50dd2a
mov cx, word [ebp]
mov eax, dword [esp + 0x111c]
xor dl, dl
mov si, cx
dec ecx
test si, si
je 0x50dd2a
movsx ebx, cx
lea edi, [esp + 0x1090]
mov esi, eax
sub edi, esi
inc ebx
test dl, dl
mov edx, dword [eax]
je 0x50dd18
mov esi, dword [edi + eax]
lea ecx, [edx + esi + 1]
not edx
cmp esi, edx
setae dl
jmp 0x50dd22
mov ecx, dword [edi + eax]
add ecx, edx
cmp ecx, edx
setb dl
mov dword [eax], ecx
add eax, 4
dec ebx
jne 0x50dd02
mov ecx, dword [esp + 0x1124]
test dword [ecx], 0x40000000
je 0x50dd86
mov cx, word [ebp]
mov eax, dword [esp + 0x111c]
xor dl, dl
mov si, cx
dec ecx
test si, si
je 0x50dd86
movsx ebx, cx
lea edi, [esp + 0x1008]
mov esi, eax
sub edi, esi
inc ebx
test dl, dl
mov edx, dword [eax]
je 0x50dd74
mov esi, dword [edi + eax]
lea ecx, [edx + esi + 1]
not edx
cmp esi, edx
setae dl
jmp 0x50dd7e
mov ecx, dword [edi + eax]
add ecx, edx
cmp ecx, edx
setb dl
mov dword [eax], ecx
add eax, 4
dec ebx
jne 0x50dd5e
mov edx, dword [esp + 0x1124]
test dword [edx], 0x20000000
je 0x50dde4
mov cx, word [ebp]
mov eax, dword [esp + 0x111c]
xor dl, dl
mov si, cx
dec ecx
test si, si
je 0x50dde4
movsx ebx, cx
lea edi, [esp + 0xf80]
mov esi, eax
sub edi, esi
inc ebx
test dl, dl
je 0x50ddd0
mov esi, dword [edi + eax]
mov edx, dword [eax]
lea ecx, [edx + esi + 1]
not edx
cmp esi, edx
setae dl
jmp 0x50dddc
mov edx, dword [eax]
mov ecx, dword [edi + eax]
add ecx, edx
cmp ecx, edx
setb dl
mov dword [eax], ecx
add eax, 4
dec ebx
jne 0x50ddba
mov eax, dword [esp + 0x1124]
test dword [eax], 0x10000000
je 0x50de40
mov cx, word [ebp]
mov eax, dword [esp + 0x111c]
xor dl, dl
mov si, cx
dec ecx
test si, si
je 0x50de40
movsx ebx, cx
lea edi, [esp + 0xef8]
mov esi, eax
sub edi, esi
inc ebx
test dl, dl
mov edx, dword [eax]
je 0x50de2e
mov esi, dword [edi + eax]
lea ecx, [edx + esi + 1]
not edx
cmp esi, edx
setae dl
jmp 0x50de38
mov ecx, dword [edi + eax]
add ecx, edx
cmp ecx, edx
setb dl
mov dword [eax], ecx
add eax, 4
dec ebx
jne 0x50de18
mov ecx, dword [esp + 0x1124]
test dword [ecx], 0x8000000
je 0x50de9c
mov cx, word [ebp]
mov eax, dword [esp + 0x111c]
xor dl, dl
mov si, cx
dec ecx
test si, si
je 0x50de9c
movsx ebx, cx
lea edi, [esp + 0xe70]
mov esi, eax
sub edi, esi
inc ebx
test dl, dl
mov edx, dword [eax]
je 0x50de8a
mov esi, dword [edi + eax]
lea ecx, [edx + esi + 1]
not edx
cmp esi, edx
setae dl
jmp 0x50de94
mov ecx, dword [edi + eax]
add ecx, edx
cmp ecx, edx
setb dl
mov dword [eax], ecx
add eax, 4
dec ebx
jne 0x50de74
mov edx, dword [esp + 0x1124]
test dword [edx], 0x4000000
je 0x50def8
mov cx, word [ebp]
mov eax, dword [esp + 0x111c]
xor dl, dl
mov si, cx
dec ecx
test si, si
je 0x50def8
movsx ebx, cx
lea edi, [esp + 0xde8]
mov esi, eax
sub edi, esi
inc ebx
test dl, dl
mov edx, dword [eax]
je 0x50dee6
mov esi, dword [edi + eax]
lea ecx, [edx + esi + 1]
not edx
cmp esi, edx
setae dl
jmp 0x50def0
mov ecx, dword [edi + eax]
add ecx, edx
cmp ecx, edx
setb dl
mov dword [eax], ecx
add eax, 4
dec ebx
jne 0x50ded0
mov eax, dword [esp + 0x1124]
test dword [eax], 0x2000000
je 0x50df54
mov cx, word [ebp]
mov eax, dword [esp + 0x111c]
xor dl, dl
mov si, cx
dec ecx
test si, si
je 0x50df54
movsx ebx, cx
lea edi, [esp + 0xd60]
mov esi, eax
sub edi, esi
inc ebx
test dl, dl
mov edx, dword [eax]
je 0x50df42
mov esi, dword [edi + eax]
lea ecx, [edx + esi + 1]
not edx
cmp esi, edx
setae dl
jmp 0x50df4c
mov ecx, dword [edi + eax]
add ecx, edx
cmp ecx, edx
setb dl
mov dword [eax], ecx
add eax, 4
dec ebx
jne 0x50df2c
mov ecx, dword [esp + 0x1124]
test dword [ecx], 0x1000000
je 0x50dfb0
mov cx, word [ebp]
mov eax, dword [esp + 0x111c]
xor dl, dl
mov si, cx
dec ecx
test si, si
je 0x50dfb0
movsx ebx, cx
lea edi, [esp + 0xcd8]
mov esi, eax
sub edi, esi
inc ebx
test dl, dl
mov edx, dword [eax]
je 0x50df9e
mov esi, dword [edi + eax]
lea ecx, [edx + esi + 1]
not edx
cmp esi, edx
setae dl
jmp 0x50dfa8
mov ecx, dword [edi + eax]
add ecx, edx
cmp ecx, edx
setb dl
mov dword [eax], ecx
add eax, 4
dec ebx
jne 0x50df88
mov edx, dword [esp + 0x1124]
test dword [edx], 0x800000
je 0x50e00c
mov cx, word [ebp]
mov eax, dword [esp + 0x111c]
xor dl, dl
mov si, cx
dec ecx
test si, si
je 0x50e00c
movsx ebx, cx
lea edi, [esp + 0xc50]
mov esi, eax
sub edi, esi
inc ebx
test dl, dl
mov edx, dword [eax]
je 0x50dffa
mov esi, dword [edi + eax]
lea ecx, [edx + esi + 1]
not edx
cmp esi, edx
setae dl
jmp 0x50e004
mov ecx, dword [edi + eax]
add ecx, edx
cmp ecx, edx
setb dl
mov dword [eax], ecx
add eax, 4
dec ebx
jne 0x50dfe4
mov eax, dword [esp + 0x1124]
test dword [eax], 0x400000
je 0x50e068
mov cx, word [ebp]
mov eax, dword [esp + 0x111c]
xor dl, dl
mov si, cx
dec ecx
test si, si
je 0x50e068
movsx ebx, cx
lea edi, [esp + 0xbc8]
mov esi, eax
sub edi, esi
inc ebx
test dl, dl
mov edx, dword [eax]
je 0x50e056
mov esi, dword [edi + eax]
lea ecx, [edx + esi + 1]
not edx
cmp esi, edx
setae dl
jmp 0x50e060
mov ecx, dword [edi + eax]
add ecx, edx
cmp ecx, edx
setb dl
mov dword [eax], ecx
add eax, 4
dec ebx
jne 0x50e040
mov ecx, dword [esp + 0x1124]
test dword [ecx], 0x200000
je 0x50e0c6
mov cx, word [ebp]
mov eax, dword [esp + 0x111c]
xor dl, dl
mov si, cx
dec ecx
test si, si
je 0x50e0c6
movsx ebx, cx
lea edi, [esp + 0xb40]
mov esi, eax
sub edi, esi
inc ebx
test dl, dl
je 0x50e0b2
mov esi, dword [edi + eax]
mov edx, dword [eax]
lea ecx, [edx + esi + 1]
not edx
cmp esi, edx
setae dl
jmp 0x50e0be
mov edx, dword [eax]
mov ecx, dword [edi + eax]
add ecx, edx
cmp ecx, edx
setb dl
mov dword [eax], ecx
add eax, 4
dec ebx
jne 0x50e09c
mov edx, dword [esp + 0x1124]
test dword [edx], 0x100000
je 0x50e122
mov cx, word [ebp]
mov eax, dword [esp + 0x111c]
xor dl, dl
mov si, cx
dec ecx
test si, si
je 0x50e122
movsx ebx, cx
lea edi, [esp + 0xab8]
mov esi, eax
sub edi, esi
inc ebx
test dl, dl
mov edx, dword [eax]
je 0x50e110
mov esi, dword [edi + eax]
lea ecx, [edx + esi + 1]
not edx
cmp esi, edx
setae dl
jmp 0x50e11a
mov ecx, dword [edi + eax]
add ecx, edx
cmp ecx, edx
setb dl
mov dword [eax], ecx
add eax, 4
dec ebx
jne 0x50e0fa
mov eax, dword [esp + 0x1124]
test dword [eax], 0x80000
je 0x50e17e
mov cx, word [ebp]
mov eax, dword [esp + 0x111c]
xor dl, dl
mov si, cx
dec ecx
test si, si
je 0x50e17e
movsx ebx, cx
lea edi, [esp + 0xa30]
mov esi, eax
sub edi, esi
inc ebx
test dl, dl
mov edx, dword [eax]
je 0x50e16c
mov esi, dword [edi + eax]
lea ecx, [esi + edx + 1]
not edx
cmp esi, edx
setae dl
jmp 0x50e176
mov ecx, dword [edi + eax]
add ecx, edx
cmp ecx, edx
setb dl
mov dword [eax], ecx
add eax, 4
dec ebx
jne 0x50e156
mov ecx, dword [esp + 0x1124]
test dword [ecx], 0x40000
je 0x50e1da
mov cx, word [ebp]
mov eax, dword [esp + 0x111c]
xor dl, dl
mov si, cx
dec ecx
test si, si
je 0x50e1da
movsx ebx, cx
lea edi, [esp + 0x9a8]
mov esi, eax
sub edi, esi
inc ebx
test dl, dl
mov edx, dword [eax]
je 0x50e1c8
mov esi, dword [edi + eax]
lea ecx, [esi + edx + 1]
not edx
cmp esi, edx
setae dl
jmp 0x50e1d2
mov ecx, dword [edi + eax]
add ecx, edx
cmp ecx, edx
setb dl
mov dword [eax], ecx
add eax, 4
dec ebx
jne 0x50e1b2
mov edx, dword [esp + 0x1124]
test dword [edx], 0x20000
je 0x50e236
mov cx, word [ebp]
mov eax, dword [esp + 0x111c]
xor dl, dl
mov si, cx
dec ecx
test si, si
je 0x50e236
movsx ebx, cx
lea edi, [esp + 0x920]
mov esi, eax
sub edi, esi
inc ebx
test dl, dl
mov edx, dword [eax]
je 0x50e224
mov esi, dword [edi + eax]
lea ecx, [esi + edx + 1]
not edx
cmp esi, edx
setae dl
jmp 0x50e22e
mov ecx, dword [edi + eax]
add ecx, edx
cmp ecx, edx
setb dl
mov dword [eax], ecx
add eax, 4
dec ebx
jne 0x50e20e
mov eax, dword [esp + 0x1124]
test dword [eax], 0x10000
je 0x50e292
mov cx, word [ebp]
mov eax, dword [esp + 0x111c]
xor dl, dl
mov si, cx
dec ecx
test si, si
je 0x50e292
movsx ebx, cx
lea edi, [esp + 0x898]
mov esi, eax
sub edi, esi
inc ebx
test dl, dl
mov edx, dword [eax]
je 0x50e280
mov esi, dword [edi + eax]
lea ecx, [edx + esi + 1]
not edx
cmp esi, edx
setae dl
jmp 0x50e28a
mov ecx, dword [edi + eax]
add ecx, edx
cmp ecx, edx
setb dl
mov dword [eax], ecx
add eax, 4
dec ebx
jne 0x50e26a
mov ecx, dword [esp + 0x1124]
mov eax, dword [ecx]
test ah, 0x80
je 0x50e2ed
mov cx, word [ebp]
mov eax, dword [esp + 0x111c]
xor dl, dl
mov si, cx
dec ecx
test si, si
je 0x50e2ed
movsx ebx, cx
lea edi, [esp + 0x810]
mov esi, eax
sub edi, esi
inc ebx
test dl, dl
mov edx, dword [eax]
je 0x50e2db
mov esi, dword [eax + edi]
lea ecx, [edx + esi + 1]
not edx
cmp esi, edx
setae dl
jmp 0x50e2e5
mov ecx, dword [eax + edi]
add ecx, edx
cmp ecx, edx
setb dl
mov dword [eax], ecx
add eax, 4
dec ebx
jne 0x50e2c5
mov edx, dword [esp + 0x1124]
mov eax, dword [edx]
test ah, 0x40
je 0x50e348
mov cx, word [ebp]
mov eax, dword [esp + 0x111c]
xor dl, dl
mov si, cx
dec ecx
test si, si
je 0x50e348
movsx ebx, cx
lea edi, [esp + 0x788]
mov esi, eax
sub edi, esi
inc ebx
test dl, dl
mov edx, dword [eax]
je 0x50e336
mov esi, dword [eax + edi]
lea ecx, [edx + esi + 1]
not edx
cmp esi, edx
setae dl
jmp 0x50e340
mov ecx, dword [eax + edi]
add ecx, edx
cmp ecx, edx
setb dl
mov dword [eax], ecx
add eax, 4
dec ebx
jne 0x50e320
mov eax, dword [esp + 0x1124]
mov ecx, dword [eax]
test ch, 0x20
je 0x50e3a5
mov cx, word [ebp]
mov eax, dword [esp + 0x111c]
xor dl, dl
mov si, cx
dec ecx
test si, si
je 0x50e3a5
movsx ebx, cx
lea edi, [esp + 0x700]
mov esi, eax
sub edi, esi
inc ebx
test dl, dl
je 0x50e391
mov esi, dword [eax + edi]
mov edx, dword [eax]
lea ecx, [edx + esi + 1]
not edx
cmp esi, edx
setae dl
jmp 0x50e39d
mov edx, dword [eax]
mov ecx, dword [eax + edi]
add ecx, edx
cmp ecx, edx
setb dl
mov dword [eax], ecx
add eax, 4
dec ebx
jne 0x50e37b
mov ecx, dword [esp + 0x1124]
mov eax, dword [ecx]
test ah, 0x10
je 0x50e400
mov cx, word [ebp]
mov eax, dword [esp + 0x111c]
xor dl, dl
mov si, cx
dec ecx
test si, si
je 0x50e400
movsx ebx, cx
lea edi, [esp + 0x678]
mov esi, eax
sub edi, esi
inc ebx
test dl, dl
mov edx, dword [eax]
je 0x50e3ee
mov esi, dword [eax + edi]
lea ecx, [edx + esi + 1]
not edx
cmp esi, edx
setae dl
jmp 0x50e3f8
mov ecx, dword [eax + edi]
add ecx, edx
cmp ecx, edx
setb dl
mov dword [eax], ecx
add eax, 4
dec ebx
jne 0x50e3d8
mov edx, dword [esp + 0x1124]
mov eax, dword [edx]
test ah, 8
je 0x50e45b
mov cx, word [ebp]
mov eax, dword [esp + 0x111c]
xor dl, dl
mov si, cx
dec ecx
test si, si
je 0x50e45b
movsx ebx, cx
lea edi, [esp + 0x5f0]
mov esi, eax
sub edi, esi
inc ebx
test dl, dl
mov edx, dword [eax]
je 0x50e449
mov esi, dword [edi + eax]
lea ecx, [edx + esi + 1]
not edx
cmp esi, edx
setae dl
jmp 0x50e453
mov ecx, dword [edi + eax]
add ecx, edx
cmp ecx, edx
setb dl
mov dword [eax], ecx
add eax, 4
dec ebx
jne 0x50e433
mov edi, dword [esp + 0x1124]
mov eax, dword [edi]
test ah, 4
je 0x50e482
mov ebx, dword [esp + 0x111c]
lea eax, [esp + 0x568]
push eax
push ebx
mov ecx, ebp
call fcn.0050e7a0
jmp 0x50e489
mov ebx, dword [esp + 0x111c]
mov eax, dword [edi]
test ah, 2
je 0x50e4a0
lea ecx, [esp + 0x4e0]
push ecx
push ebx
mov ecx, ebp
call fcn.0050e7a0
mov eax, dword [edi]
test ah, 1
je 0x50e4b7
lea edx, [esp + 0x458]
mov ecx, ebp
push edx
push ebx
call fcn.0050e7a0
test byte [edi], 0x80
je 0x50e4cc
lea eax, [esp + 0x3d0]
mov ecx, ebp
push eax
push ebx
call fcn.0050e7a0
test byte [edi], 0x40
je 0x50e4e1
lea ecx, [esp + 0x348]
push ecx
push ebx
mov ecx, ebp
call fcn.0050e7a0
test byte [edi], 0x20
je 0x50e4f6
lea edx, [esp + 0x2c0]
mov ecx, ebp
push edx
push ebx
call fcn.0050e7a0
test byte [edi], 0x10
je 0x50e50b
lea eax, [esp + 0x238]
mov ecx, ebp
push eax
push ebx
call fcn.0050e7a0
test byte [edi], 8
je 0x50e520
lea ecx, [esp + 0x1b0]
push ecx
push ebx
mov ecx, ebp
call fcn.0050e7a0
test byte [edi], 4
je 0x50e535
lea edx, [esp + 0x128]
mov ecx, ebp
push edx
push ebx
call fcn.0050e7a0
test byte [edi], 2
je 0x50e54a
lea eax, [esp + 0xa0]
mov ecx, ebp
push eax
push ebx
call fcn.0050e7a0
test byte [edi], 1
je 0x50e55f
mov ecx, dword [esp + 0x1120]
push ecx
push ebx
mov ecx, ebp
call fcn.0050e7a0
mov esi, dword [esp + 0x10]
mov edx, dword [ebp + 0x2a8]
mov eax, dword [esi + ebx - 4]
sub eax, edx
test eax, eax
jg 0x50e780
jne 0x50e5da
mov edx, dword [esp + 0x14]
mov ecx, dword [ebp + 0x328]
mov eax, dword [edx]
cmp eax, ecx
ja 0x50e780
jne 0x50e5da
mov di, word [ebp]
mov ecx, dword [ebp + 0x1420]
movsx eax, di
shl eax, 2
lea esi, [eax + ebx - 4]
lea edx, [ecx + eax - 4]
mov eax, dword [esi]
mov ecx, dword [edx]
cmp eax, ecx
jb 0x50e5cf
sub edx, 4
sub esi, 4
cmp eax, ecx
ja 0x50e775
dec edi
test di, di
je 0x50e775
mov eax, dword [esi]
mov ecx, dword [edx]
cmp eax, ecx
jae 0x50e5af
mov esi, dword [esp + 0x10]
mov edi, dword [esp + 0x1124]
mov eax, dword [esi + ebx - 4]
mov edx, dword [ebp + 0x2a4]
sub eax, edx
test eax, eax
jg 0x50e612
jne 0x50e623
mov eax, dword [esp + 0x14]
mov ecx, dword [ebp + 0x324]
mov eax, dword [eax]
cmp eax, ecx
ja 0x50e612
jne 0x50e623
mov ecx, dword [ebp + 0x141c]
push ecx
push ebx
mov ecx, ebp
call fcn.0050c5f0
test ax, ax
jl 0x50e623
mov edx, dword [ebp + 0x141c]
push 0
push edx
push ebx
mov ecx, ebp
call fcn.0050c650
mov eax, dword [esi + ebx - 4]
mov edx, dword [ebp + 0x2a0]
sub eax, edx
test eax, eax
jg 0x50e65b
jne 0x50e66c
mov eax, dword [esp + 0x14]
mov ecx, dword [ebp + 0x320]
mov eax, dword [eax]
cmp eax, ecx
ja 0x50e65b
jne 0x50e66c
mov ecx, dword [ebp + 0x1418]
push ecx
push ebx
mov ecx, ebp
call fcn.0050c5f0
test ax, ax
jl 0x50e66c
mov edx, dword [ebp + 0x1418]
push 0
push edx
push ebx
mov ecx, ebp
call fcn.0050c650
mov eax, dword [esi + ebx - 4]
mov edx, dword [ebp + 0x29c]
sub eax, edx
test eax, eax
jg 0x50e6a4
jne 0x50e6b5
mov eax, dword [esp + 0x14]
mov ecx, dword [ebp + 0x31c]
mov eax, dword [eax]
cmp eax, ecx
ja 0x50e6a4
jne 0x50e6b5
mov ecx, dword [ebp + 0x1414]
push ecx
push ebx
mov ecx, ebp
call fcn.0050c5f0
test ax, ax
jl 0x50e6b5
mov edx, dword [ebp + 0x1414]
push 0
push edx
push ebx
mov ecx, ebp
call fcn.0050c650
mov eax, dword [esi + ebx - 4]
mov edx, dword [ebp + 0x298]
sub eax, edx
test eax, eax
jg 0x50e6ed
jne 0x50e6fe
mov eax, dword [esp + 0x14]
mov ecx, dword [ebp + 0x318]
mov eax, dword [eax]
cmp eax, ecx
ja 0x50e6ed
jne 0x50e6fe
mov ecx, dword [ebp + 0x1410]
push ecx
push ebx
mov ecx, ebp
call fcn.0050c5f0
test ax, ax
jl 0x50e6fe
mov edx, dword [ebp + 0x1410]
push 0
push edx
push ebx
mov ecx, ebp
call fcn.0050c650
mov eax, dword [esi + ebx - 4]
mov edx, dword [ebp + 0x294]
sub eax, edx
test eax, eax
jg 0x50e736
jne 0x50e747
mov eax, dword [esp + 0x14]
mov ecx, dword [ebp + 0x314]
mov eax, dword [eax]
cmp eax, ecx
ja 0x50e736
jne 0x50e747
mov ecx, dword [ebp + 0x140c]
push ecx
push ebx
mov ecx, ebp
call fcn.0050c5f0
test ax, ax
jl 0x50e747
mov edx, dword [ebp + 0x140c]
push 0
push edx
push ebx
mov ecx, ebp
call fcn.0050c650
mov eax, dword [esp + 0x1c]
sub edi, 4
mov cx, ax
dec eax
test cx, cx
mov dword [esp + 0x1124], edi
mov dword [esp + 0x1c], eax
jne 0x50c9e6
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x1108
ret 0xc
mov esi, dword [esp + 0x10]
mov edi, dword [esp + 0x1124]
mov edx, dword [ebp + 0x1420]
push 0
push edx
push ebx
mov ecx, ebp
call fcn.0050c650
jmp 0x50e5da