Function at 0x5b2dc0
Capabilities:
Enumerate pe sections

Disassembly:
sub esp, 8
mov eax, dword [esp + 0x10]
push ebx
push ebp
push esi
mov esi, dword [eax]
mov ecx, esi
and ecx, 0xffff
shr esi, 0x10
mov edx, ecx
imul ecx, ecx
imul edx, esi
imul esi, esi
push edi
mov edi, edx
shl edx, 0x11
shr edi, 0xf
add esi, edi
add ecx, edx
cmp ecx, edx
mov dword [esp + 0x14], esi
jae 0x5b2dfc
inc esi
mov dword [esp + 0x14], esi
mov edx, dword [esp + 0x1c]
mov dword [edx], ecx
movzx edi, word [eax + 6]
mov ecx, dword [eax + 4]
movzx ebp, word [eax + 2]
mov esi, dword [eax]
and ecx, 0xffff
and esi, 0xffff
mov edx, ecx
imul ecx, esi
mov ebx, edi
imul edx, ebp
imul edi, ebp
imul ebx, esi
add edx, ebx
cmp edx, ebx
mov dword [esp + 0x20], 0
jae 0x5b2e3f
add edi, 0x10000
mov esi, edx
shl edx, 0x10
shr esi, 0x10
add ecx, edx
add edi, esi
cmp ecx, edx
jae 0x5b2e50
inc edi
test edi, edi
mov ebx, 1
js 0x5b2e5d
mov ebx, dword [esp + 0x20]
add edi, edi
test ecx, ecx
jns 0x5b2e64
inc edi
lea edx, [ecx + ecx]
mov ecx, dword [esp + 0x14]
add ecx, edx
cmp ecx, edx
jae 0x5b2e75
inc edi
jne 0x5b2e75
inc ebx
mov edx, dword [esp + 0x1c]
mov dword [edx + 4], ecx
mov esi, dword [eax + 4]
mov edx, esi
and edx, 0xffff
shr esi, 0x10
mov ecx, edx
imul edx, edx
imul ecx, esi
imul esi, esi
mov ebp, ecx
shl ecx, 0x11
shr ebp, 0xf
add edx, ecx
add esi, ebp
cmp edx, ecx
mov dword [esp + 0x10], 0
jae 0x5b2eae
inc esi
add edi, edx
cmp edi, edx
mov dword [esp + 0x14], edi
jae 0x5b2eb9
inc esi
add ebx, esi
cmp ebx, esi
mov dword [esp + 0x20], ebx
jae 0x5b2ecb
mov dword [esp + 0x10], 1
movzx edi, word [eax + 0xa]
mov ecx, dword [eax + 8]
movzx ebp, word [eax + 2]
mov esi, dword [eax]
and ecx, 0xffff
and esi, 0xffff
mov edx, ecx
imul ecx, esi
mov ebx, edi
imul edx, ebp
imul edi, ebp
imul ebx, esi
add edx, ebx
cmp edx, ebx
jae 0x5b2f00
add edi, 0x10000
mov esi, edx
shl edx, 0x10
shr esi, 0x10
add ecx, edx
add edi, esi
cmp ecx, edx
jae 0x5b2f11
inc edi
test edi, edi
jns 0x5b2f19
inc dword [esp + 0x10]
test ecx, ecx
lea edx, [edi + edi]
jns 0x5b2f21
inc edx
mov esi, dword [esp + 0x14]
add ecx, ecx
add esi, ecx
cmp esi, ecx
mov dword [esp + 0x14], esi
jae 0x5b2f38
inc edx
jne 0x5b2f38
inc dword [esp + 0x10]
mov ecx, dword [esp + 0x20]
add ecx, edx
cmp ecx, edx
mov dword [esp + 0x20], ecx
jae 0x5b2f4a
inc dword [esp + 0x10]
mov edx, dword [esp + 0x14]
mov ecx, dword [esp + 0x1c]
mov dword [ecx + 8], edx
movzx edi, word [eax + 0xe]
mov ecx, dword [eax + 0xc]
movzx ebp, word [eax + 2]
mov esi, dword [eax]
and ecx, 0xffff
and esi, 0xffff
mov edx, ecx
imul ecx, esi
mov ebx, edi
imul edx, ebp
imul edi, ebp
imul ebx, esi
add edx, ebx
cmp edx, ebx
mov dword [esp + 0x14], 0
jae 0x5b2f92
add edi, 0x10000
mov esi, edx
shl edx, 0x10
shr esi, 0x10
add ecx, edx
add edi, esi
cmp ecx, edx
jae 0x5b2fa3
inc edi
test edi, edi
jns 0x5b2faf
mov dword [esp + 0x14], 1
test ecx, ecx
lea edx, [edi + edi]
jns 0x5b2fb7
inc edx
mov esi, dword [esp + 0x20]
add ecx, ecx
add esi, ecx
cmp esi, ecx
mov dword [esp + 0x20], esi
jae 0x5b2fce
inc edx
jne 0x5b2fce
inc dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
add ecx, edx
cmp ecx, edx
mov dword [esp + 0x10], ecx
jae 0x5b2fe0
inc dword [esp + 0x14]
movzx edi, word [eax + 0xa]
mov ecx, dword [eax + 8]
movzx ebp, word [eax + 6]
mov esi, dword [eax + 4]
and ecx, 0xffff
and esi, 0xffff
mov edx, ecx
imul ecx, esi
mov ebx, edi
imul edx, ebp
imul edi, ebp
imul ebx, esi
add edx, ebx
cmp edx, ebx
jae 0x5b3016
add edi, 0x10000
mov esi, edx
shl edx, 0x10
shr esi, 0x10
add ecx, edx
add edi, esi
cmp ecx, edx
jae 0x5b3027
inc edi
test edi, edi
mov ebx, dword [esp + 0x14]
jns 0x5b3030
inc ebx
test ecx, ecx
lea esi, [edi + edi]
jns 0x5b3038
inc esi
lea edx, [ecx + ecx]
mov ecx, dword [esp + 0x20]
add ecx, edx
cmp ecx, edx
jae 0x5b3049
inc esi
jne 0x5b3049
inc ebx
mov edi, dword [esp + 0x10]
add edi, esi
cmp edi, esi
jae 0x5b3054
inc ebx
mov edx, dword [esp + 0x1c]
mov dword [edx + 0xc], ecx
mov esi, dword [eax + 8]
mov edx, esi
and edx, 0xffff
shr esi, 0x10
mov ecx, edx
imul edx, edx
imul ecx, esi
imul esi, esi
mov ebp, ecx
shl ecx, 0x11
shr ebp, 0xf
add edx, ecx
add esi, ebp
cmp edx, ecx
mov dword [esp + 0x20], 0
jae 0x5b308d
inc esi
add edi, edx
cmp edi, edx
mov dword [esp + 0x10], edi
jae 0x5b3098
inc esi
add ebx, esi
cmp ebx, esi
mov dword [esp + 0x14], ebx
jae 0x5b30aa
mov dword [esp + 0x20], 1
movzx edi, word [eax + 0xe]
mov ecx, dword [eax + 0xc]
movzx ebp, word [eax + 6]
mov esi, dword [eax + 4]
and ecx, 0xffff
and esi, 0xffff
mov edx, ecx
imul ecx, esi
mov ebx, edi
imul edx, ebp
imul edi, ebp
imul ebx, esi
add edx, ebx
cmp edx, ebx
jae 0x5b30e0
add edi, 0x10000
mov esi, edx
shl edx, 0x10
shr esi, 0x10
add ecx, edx
add edi, esi
cmp ecx, edx
jae 0x5b30f1
inc edi
test edi, edi
jns 0x5b30f9
inc dword [esp + 0x20]
test ecx, ecx
lea edx, [edi + edi]
jns 0x5b3101
inc edx
mov esi, dword [esp + 0x10]
add ecx, ecx
add esi, ecx
cmp esi, ecx
mov dword [esp + 0x10], esi
jae 0x5b3118
inc edx
jne 0x5b3118
inc dword [esp + 0x20]
mov ecx, dword [esp + 0x14]
add ecx, edx
cmp ecx, edx
mov dword [esp + 0x14], ecx
jae 0x5b312a
inc dword [esp + 0x20]
movzx edi, word [eax + 0x12]
mov ecx, dword [eax + 0x10]
movzx ebp, word [eax + 2]
mov esi, dword [eax]
and ecx, 0xffff
and esi, 0xffff
mov edx, ecx
imul ecx, esi
mov ebx, edi
imul edx, ebp
imul edi, ebp
imul ebx, esi
add edx, ebx
cmp edx, ebx
jae 0x5b315f
add edi, 0x10000
mov esi, edx
shl edx, 0x10
shr esi, 0x10
add ecx, edx
add edi, esi
cmp ecx, edx
jae 0x5b3170
inc edi
test edi, edi
jns 0x5b3178
inc dword [esp + 0x20]
test ecx, ecx
lea edx, [edi + edi]
jns 0x5b3180
inc edx
mov esi, dword [esp + 0x10]
add ecx, ecx
add esi, ecx
cmp esi, ecx
mov dword [esp + 0x10], esi
jae 0x5b3197
inc edx
jne 0x5b3197
inc dword [esp + 0x20]
mov ecx, dword [esp + 0x14]
add ecx, edx
cmp ecx, edx
mov dword [esp + 0x14], ecx
jae 0x5b31a9
inc dword [esp + 0x20]
mov edx, dword [esp + 0x10]
mov ecx, dword [esp + 0x1c]
mov dword [ecx + 0x10], edx
movzx edi, word [eax + 0x16]
mov ecx, dword [eax + 0x14]
movzx ebp, word [eax + 2]
mov esi, dword [eax]
and ecx, 0xffff
and esi, 0xffff
mov edx, ecx
imul ecx, esi
mov ebx, edi
imul edx, ebp
imul edi, ebp
imul ebx, esi
add edx, ebx
cmp edx, ebx
mov dword [esp + 0x10], 0
jae 0x5b31f1
add edi, 0x10000
mov esi, edx
shl edx, 0x10
shr esi, 0x10
add ecx, edx
add edi, esi
cmp ecx, edx
jae 0x5b3202
inc edi
test edi, edi
jns 0x5b320e
mov dword [esp + 0x10], 1
test ecx, ecx
lea edx, [edi + edi]
jns 0x5b3216
inc edx
mov esi, dword [esp + 0x14]
add ecx, ecx
add esi, ecx
cmp esi, ecx
mov dword [esp + 0x14], esi
jae 0x5b322d
inc edx
jne 0x5b322d
inc dword [esp + 0x10]
mov ecx, dword [esp + 0x20]
add ecx, edx
cmp ecx, edx
mov dword [esp + 0x20], ecx
jae 0x5b323f
inc dword [esp + 0x10]
movzx edi, word [eax + 0x12]
mov ecx, dword [eax + 0x10]
movzx ebp, word [eax + 6]
mov esi, dword [eax + 4]
and ecx, 0xffff
and esi, 0xffff
mov edx, ecx
imul ecx, esi
mov ebx, edi
imul edx, ebp
imul edi, ebp
imul ebx, esi
add edx, ebx
cmp edx, ebx
jae 0x5b3275
add edi, 0x10000
mov esi, edx
shl edx, 0x10
shr esi, 0x10
add ecx, edx
add edi, esi
cmp ecx, edx
jae 0x5b3286
inc edi
test edi, edi
jns 0x5b328e
inc dword [esp + 0x10]
test ecx, ecx
lea edx, [edi + edi]
jns 0x5b3296
inc edx
mov esi, dword [esp + 0x14]
add ecx, ecx
add esi, ecx
cmp esi, ecx
mov dword [esp + 0x14], esi
jae 0x5b32ad
inc edx
jne 0x5b32ad
inc dword [esp + 0x10]
mov ecx, dword [esp + 0x20]
add ecx, edx
cmp ecx, edx
mov dword [esp + 0x20], ecx
jae 0x5b32bf
inc dword [esp + 0x10]
movzx edi, word [eax + 0xe]
mov ecx, dword [eax + 0xc]
movzx ebp, word [eax + 0xa]
mov esi, dword [eax + 8]
and ecx, 0xffff
and esi, 0xffff
mov edx, ecx
imul ecx, esi
mov ebx, edi
imul edx, ebp
imul edi, ebp
imul ebx, esi
add edx, ebx
cmp edx, ebx
jae 0x5b32f5
add edi, 0x10000
mov esi, edx
shl edx, 0x10
shr esi, 0x10
add ecx, edx
add edi, esi
cmp ecx, edx
jae 0x5b3306
inc edi
test edi, edi
mov ebx, dword [esp + 0x10]
jns 0x5b330f
inc ebx
test ecx, ecx
lea esi, [edi + edi]
jns 0x5b3317
inc esi
lea edx, [ecx + ecx]
mov ecx, dword [esp + 0x14]
add ecx, edx
cmp ecx, edx
jae 0x5b3328
inc esi
jne 0x5b3328
inc ebx
mov edi, dword [esp + 0x20]
add edi, esi
cmp edi, esi
jae 0x5b3333
inc ebx
mov edx, dword [esp + 0x1c]
mov dword [edx + 0x14], ecx
mov esi, dword [eax + 0xc]
mov edx, esi
and edx, 0xffff
shr esi, 0x10
mov ecx, edx
imul edx, edx
imul ecx, esi
imul esi, esi
mov ebp, ecx
shl ecx, 0x11
shr ebp, 0xf
add edx, ecx
add esi, ebp
cmp edx, ecx
mov dword [esp + 0x14], 0
jae 0x5b336c
inc esi
add edi, edx
cmp edi, edx
mov dword [esp + 0x20], edi
jae 0x5b3377
inc esi
add ebx, esi
cmp ebx, esi
mov dword [esp + 0x10], ebx
jae 0x5b3389
mov dword [esp + 0x14], 1
movzx edi, word [eax + 0x12]
mov ecx, dword [eax + 0x10]
movzx ebp, word [eax + 0xa]
mov esi, dword [eax + 8]
and ecx, 0xffff
and esi, 0xffff
mov edx, ecx
imul ecx, esi
mov ebx, edi
imul edx, ebp
imul edi, ebp
imul ebx, esi
add edx, ebx
cmp edx, ebx
jae 0x5b33bf
add edi, 0x10000
mov esi, edx
shl edx, 0x10
shr esi, 0x10
add ecx, edx
add edi, esi
cmp ecx, edx
jae 0x5b33d0
inc edi
test edi, edi
jns 0x5b33d8
inc dword [esp + 0x14]
test ecx, ecx
lea edx, [edi + edi]
jns 0x5b33e0
inc edx
mov esi, dword [esp + 0x20]
add ecx, ecx
add esi, ecx
cmp esi, ecx
mov dword [esp + 0x20], esi
jae 0x5b33f7
inc edx
jne 0x5b33f7
inc dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
add ecx, edx
cmp ecx, edx
mov dword [esp + 0x10], ecx
jae 0x5b3409
inc dword [esp + 0x14]
movzx edi, word [eax + 0x16]
mov ecx, dword [eax + 0x14]
movzx ebp, word [eax + 6]
mov esi, dword [eax + 4]
and ecx, 0xffff
and esi, 0xffff
mov edx, ecx
imul ecx, esi
mov ebx, edi
imul edx, ebp
imul edi, ebp
imul ebx, esi
add edx, ebx
cmp edx, ebx
jae 0x5b343f
add edi, 0x10000
mov esi, edx
shl edx, 0x10
shr esi, 0x10
add ecx, edx
add edi, esi
cmp ecx, edx
jae 0x5b3450
inc edi
test edi, edi
jns 0x5b3458
inc dword [esp + 0x14]
test ecx, ecx
lea edx, [edi + edi]
jns 0x5b3460
inc edx
mov esi, dword [esp + 0x20]
add ecx, ecx
add esi, ecx
cmp esi, ecx
mov dword [esp + 0x20], esi
jae 0x5b3477
inc edx
jne 0x5b3477
inc dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
add ecx, edx
cmp ecx, edx
mov dword [esp + 0x10], ecx
jae 0x5b3489
inc dword [esp + 0x14]
movzx edi, word [eax + 0x1a]
mov ecx, dword [eax + 0x18]
movzx ebp, word [eax + 2]
mov esi, dword [eax]
and ecx, 0xffff
and esi, 0xffff
mov edx, ecx
imul ecx, esi
mov ebx, edi
imul edx, ebp
imul edi, ebp
imul ebx, esi
add edx, ebx
cmp edx, ebx
jae 0x5b34be
add edi, 0x10000
mov esi, edx
shl edx, 0x10
shr esi, 0x10
add ecx, edx
add edi, esi
cmp ecx, edx
jae 0x5b34cf
inc edi
test edi, edi
jns 0x5b34d7
inc dword [esp + 0x14]
test ecx, ecx
lea edx, [edi + edi]
jns 0x5b34df
inc edx
mov esi, dword [esp + 0x20]
add ecx, ecx
add esi, ecx
cmp esi, ecx
mov dword [esp + 0x20], esi
jae 0x5b34f6
inc edx
jne 0x5b34f6
inc dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
add ecx, edx
cmp ecx, edx
mov dword [esp + 0x10], ecx
jae 0x5b3508
inc dword [esp + 0x14]
mov edx, dword [esp + 0x20]
mov ecx, dword [esp + 0x1c]
mov dword [ecx + 0x18], edx
movzx edi, word [eax + 0x1e]
mov ecx, dword [eax + 0x1c]
movzx ebp, word [eax + 2]
mov esi, dword [eax]
and ecx, 0xffff
and esi, 0xffff
mov edx, ecx
imul ecx, esi
mov ebx, edi
imul edx, ebp
imul edi, ebp
imul ebx, esi
add edx, ebx
cmp edx, ebx
mov dword [esp + 0x20], 0
jae 0x5b3550
add edi, 0x10000
mov esi, edx
shl edx, 0x10
shr esi, 0x10
add ecx, edx
add edi, esi
cmp ecx, edx
jae 0x5b3561
inc edi
test edi, edi
jns 0x5b356d
mov dword [esp + 0x20], 1
test ecx, ecx
lea edx, [edi + edi]
jns 0x5b3575
inc edx
mov esi, dword [esp + 0x10]
add ecx, ecx
add esi, ecx
cmp esi, ecx
mov dword [esp + 0x10], esi
jae 0x5b358c
inc edx
jne 0x5b358c
inc dword [esp + 0x20]
mov ecx, dword [esp + 0x14]
add ecx, edx
cmp ecx, edx
mov dword [esp + 0x14], ecx
jae 0x5b359e
inc dword [esp + 0x20]
movzx edi, word [eax + 0x1a]
mov ecx, dword [eax + 0x18]
movzx ebp, word [eax + 6]
mov esi, dword [eax + 4]
and ecx, 0xffff
and esi, 0xffff
mov edx, ecx
imul ecx, esi
mov ebx, edi
imul edx, ebp
imul edi, ebp
imul ebx, esi
add edx, ebx
cmp edx, ebx
jae 0x5b35d4
add edi, 0x10000
mov esi, edx
shl edx, 0x10
shr esi, 0x10
add ecx, edx
add edi, esi
cmp ecx, edx
jae 0x5b35e5
inc edi
test edi, edi
jns 0x5b35ed
inc dword [esp + 0x20]
test ecx, ecx
lea edx, [edi + edi]
jns 0x5b35f5
inc edx
mov esi, dword [esp + 0x10]
add ecx, ecx
add esi, ecx
cmp esi, ecx
mov dword [esp + 0x10], esi
jae 0x5b360c
inc edx
jne 0x5b360c
inc dword [esp + 0x20]
mov ecx, dword [esp + 0x14]
add ecx, edx
cmp ecx, edx
mov dword [esp + 0x14], ecx
jae 0x5b361e
inc dword [esp + 0x20]
movzx edi, word [eax + 0x16]
mov ecx, dword [eax + 0x14]
movzx ebp, word [eax + 0xa]
mov esi, dword [eax + 8]
and ecx, 0xffff
and esi, 0xffff
mov edx, ecx
imul ecx, esi
mov ebx, edi
imul edx, ebp
imul edi, ebp
imul ebx, esi
add edx, ebx
cmp edx, ebx
jae 0x5b3654
add edi, 0x10000
mov esi, edx
shl edx, 0x10
shr esi, 0x10
add ecx, edx
add edi, esi
cmp ecx, edx
jae 0x5b3665
inc edi
test edi, edi
jns 0x5b366d
inc dword [esp + 0x20]
test ecx, ecx
lea edx, [edi + edi]
jns 0x5b3675
inc edx
mov esi, dword [esp + 0x10]
add ecx, ecx
add esi, ecx
cmp esi, ecx
mov dword [esp + 0x10], esi
jae 0x5b368c
inc edx
jne 0x5b368c
inc dword [esp + 0x20]
mov ecx, dword [esp + 0x14]
add ecx, edx
cmp ecx, edx
mov dword [esp + 0x14], ecx
jae 0x5b369e
inc dword [esp + 0x20]
movzx edi, word [eax + 0x12]
mov ecx, dword [eax + 0x10]
movzx ebp, word [eax + 0xe]
mov esi, dword [eax + 0xc]
and ecx, 0xffff
and esi, 0xffff
mov edx, ecx
imul ecx, esi
mov ebx, edi
imul edx, ebp
imul edi, ebp
imul ebx, esi
add edx, ebx
cmp edx, ebx
jae 0x5b36d4
add edi, 0x10000
mov esi, edx
shl edx, 0x10
shr esi, 0x10
add ecx, edx
add edi, esi
cmp ecx, edx
jae 0x5b36e5
inc edi
test edi, edi
mov ebx, dword [esp + 0x20]
jns 0x5b36ee
inc ebx
test ecx, ecx
lea esi, [edi + edi]
jns 0x5b36f6
inc esi
lea edx, [ecx + ecx]
mov ecx, dword [esp + 0x10]
add ecx, edx
cmp ecx, edx
jae 0x5b3707
inc esi
jne 0x5b3707
inc ebx
mov edi, dword [esp + 0x14]
add edi, esi
cmp edi, esi
jae 0x5b3712
inc ebx
mov edx, dword [esp + 0x1c]
mov dword [edx + 0x1c], ecx
mov esi, dword [eax + 0x10]
mov edx, esi
and edx, 0xffff
shr esi, 0x10
mov ecx, edx
imul edx, edx
imul ecx, esi
imul esi, esi
mov ebp, ecx
shl ecx, 0x11
shr ebp, 0xf
add edx, ecx
add esi, ebp
cmp edx, ecx
mov dword [esp + 0x10], 0
jae 0x5b374b
inc esi
add edi, edx
cmp edi, edx
mov dword [esp + 0x14], edi
jae 0x5b3756
inc esi
add ebx, esi
cmp ebx, esi
mov dword [esp + 0x20], ebx
jae 0x5b3768
mov dword [esp + 0x10], 1
movzx edi, word [eax + 0x16]
mov ecx, dword [eax + 0x14]
movzx ebp, word [eax + 0xe]
mov esi, dword [eax + 0xc]
and ecx, 0xffff
and esi, 0xffff
mov edx, ecx
imul ecx, esi
mov ebx, edi
imul edx, ebp
imul edi, ebp
imul ebx, esi
add edx, ebx
cmp edx, ebx
jae 0x5b379e
add edi, 0x10000
mov esi, edx
shl edx, 0x10
shr esi, 0x10
add ecx, edx
add edi, esi
cmp ecx, edx
jae 0x5b37af
inc edi
test edi, edi
jns 0x5b37b7
inc dword [esp + 0x10]
test ecx, ecx
lea edx, [edi + edi]
jns 0x5b37bf
inc edx
mov esi, dword [esp + 0x14]
add ecx, ecx
add esi, ecx
cmp esi, ecx
mov dword [esp + 0x14], esi
jae 0x5b37d6
inc edx
jne 0x5b37d6
inc dword [esp + 0x10]
mov ecx, dword [esp + 0x20]
add ecx, edx
cmp ecx, edx
mov dword [esp + 0x20], ecx
jae 0x5b37e8
inc dword [esp + 0x10]
movzx edi, word [eax + 0x1a]
mov ecx, dword [eax + 0x18]
movzx ebp, word [eax + 0xa]
mov esi, dword [eax + 8]
and ecx, 0xffff
and esi, 0xffff
mov edx, ecx
imul ecx, esi
mov ebx, edi
imul edx, ebp
imul edi, ebp
imul ebx, esi
add edx, ebx
cmp edx, ebx
jae 0x5b381e
add edi, 0x10000
mov esi, edx
shl edx, 0x10
shr esi, 0x10
add ecx, edx
add edi, esi
cmp ecx, edx
jae 0x5b382f
inc edi
test edi, edi
jns 0x5b3837
inc dword [esp + 0x10]
test ecx, ecx
lea edx, [edi + edi]
jns 0x5b383f
inc edx
mov esi, dword [esp + 0x14]
add ecx, ecx
add esi, ecx
cmp esi, ecx
mov dword [esp + 0x14], esi
jae 0x5b3856
inc edx
jne 0x5b3856
inc dword [esp + 0x10]
mov ecx, dword [esp + 0x20]
add ecx, edx
cmp ecx, edx
mov dword [esp + 0x20], ecx
jae 0x5b3868
inc dword [esp + 0x10]
movzx edi, word [eax + 0x1e]
mov ecx, dword [eax + 0x1c]
movzx ebp, word [eax + 6]
mov esi, dword [eax + 4]
and ecx, 0xffff
and esi, 0xffff
mov edx, ecx
imul ecx, esi
mov ebx, edi
imul edx, ebp
imul edi, ebp
imul ebx, esi
add edx, ebx
cmp edx, ebx
jae 0x5b389e
add edi, 0x10000
mov esi, edx
shl edx, 0x10
shr esi, 0x10
add ecx, edx
add edi, esi
cmp ecx, edx
jae 0x5b38af
inc edi
test edi, edi
jns 0x5b38b7
inc dword [esp + 0x10]
test ecx, ecx
lea edx, [edi + edi]
jns 0x5b38bf
inc edx
mov esi, dword [esp + 0x14]
add ecx, ecx
add esi, ecx
cmp esi, ecx
mov dword [esp + 0x14], esi
jae 0x5b38d6
inc edx
jne 0x5b38d6
inc dword [esp + 0x10]
mov ecx, dword [esp + 0x20]
add ecx, edx
cmp ecx, edx
mov dword [esp + 0x20], ecx
jae 0x5b38e8
inc dword [esp + 0x10]
mov edx, dword [esp + 0x14]
mov ecx, dword [esp + 0x1c]
mov dword [ecx + 0x20], edx
movzx edi, word [eax + 0x1e]
mov ecx, dword [eax + 0x1c]
movzx ebp, word [eax + 0xa]
mov esi, dword [eax + 8]
and ecx, 0xffff
and esi, 0xffff
mov edx, ecx
imul ecx, esi
mov ebx, edi
imul edx, ebp
imul edi, ebp
imul ebx, esi
add edx, ebx
cmp edx, ebx
mov dword [esp + 0x14], 0
jae 0x5b3931
add edi, 0x10000
mov esi, edx
shl edx, 0x10
shr esi, 0x10
add ecx, edx
add edi, esi
cmp ecx, edx
jae 0x5b3942
inc edi
test edi, edi
jns 0x5b394e