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

Disassembly:
sub esp, 0x64
push ebx
push ebp
mov ebp, dword [esp + 0x70]
xor ecx, ecx
xor edx, edx
mov dword [esp + 0x40], ecx
push esi
push edi
mov ebx, dword [ebp + 8]
mov byte [esp + 0x13], 0
mov dword [esp + 0x2c], 0
mov dword [esp + 0x50], edx
mov ecx, dword [ebx + 0x6c]
mov dword [esp + 0x20], ebx
mov dword [esp + 0x54], ecx
cmp dword [ebx + 0x70], ecx
jg 0x47462b
push edx
push edx
push edx
push 0x11
push ebx
call fcn.00490570
add esp, 0x14
mov dword [esp + 0x54], eax
jmp 0x47464e
lea eax, [ecx + 1]
mov dword [ebx + 0x6c], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [ebx + 0x68]
mov dword [eax + ecx*4], 0x11
mov dword [eax + ecx*4 + 4], edx
mov dword [eax + ecx*4 + 8], edx
mov dword [eax + ecx*4 + 0xc], edx
mov dword [eax + ecx*4 + 0x10], edx
mov edx, dword [esp + 0x80]
xor ecx, ecx
xor esi, esi
mov dword [esp + 0x14], ecx
mov dword [esp + 0x24], esi
mov eax, dword [edx + 0x10]
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x7c]
mov edi, dword [eax + 0x14]
mov eax, dword [eax + 0xc]
lea eax, [eax + eax*2]
shl eax, 4
add eax, edi
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x8c]
mov eax, dword [eax + 0x48]
mov dword [esp + 0x28], eax
xor eax, eax
mov dword [esp + 0x18], eax
cmp edi, dword [esp + 0x34]
jae 0x474890
lea esp, [esp]
mov ecx, dword [esp + 0x28]
mov esi, dword [edi]
mov eax, dword [ecx]
or eax, dword [ecx + 4]
jne 0x474716
test byte [edi + 0xa], 2
jne 0x474716
test byte [esi + 4], 1
jne 0x474716
mov eax, 3
mov dword [esp + 0x5c], fcn.0047a3d0
mov word [esp + 0x6c], ax
mov eax, dword [edx + 0x2c]
mov dword [esp + 0x70], eax
lea eax, [esp + 0x58]
push esi
push eax
mov dword [esp + 0x68], 0x4cecd0
call fcn.004f37b0
add esp, 8
cmp word [esp + 0x6c], 0
je 0x47470f
push 0
push 0
push esi
push dword [ebp]
call fcn.004798e0
push eax
push dword [esp + 0x40]
push ebp
call fcn.004af9c0
add esp, 0x1c
mov dword [esp + 0x2c], eax
mov edx, dword [esp + 0x80]
mov ecx, dword [edi + 0x14]
cmp ecx, dword [edx + 0x2c]
jne 0x474877
movzx ecx, word [edi + 0xc]
test cl, 0x82
je 0x474877
test byte [edx + 0x24], 8
je 0x474745
mov eax, dword [edi]
test byte [eax + 4], 1
jne 0x474745
test cl, cl
js 0x474877
mov ecx, dword [edi + 0x20]
mov eax, dword [edi + 0x24]
and ecx, dword [esp + 0x84]
and eax, dword [esp + 0x88]
or ecx, eax
jne 0x474877
mov ecx, dword [edi + 0x1c]
test ecx, ecx
js 0x474877
mov eax, dword [edx + 0x10]
lea ecx, [ecx + ecx*4]
push dword [edi]
mov eax, dword [eax + 4]
mov al, byte [eax + ecx*4 + 0xd]
mov byte [esp + 0x16], al
call fcn.00473e60
add esp, 4
cmp al, 0x42
jl 0x4747ab
jne 0x474799
xor eax, eax
cmp byte [esp + 0x12], 0x42
sete al
jmp 0x4747a3
xor eax, eax
cmp byte [esp + 0x12], 0x43
setge al
test eax, eax
je 0x474870
mov esi, dword [edi + 0x1c]
cmp esi, 0x40
jl 0x4747bf
xor ebp, ebp
mov dword [esp + 0x44], 0x80000000
jmp 0x4747d3
mov eax, 1
xor edx, edx
mov ecx, esi
call fcn.00402530
mov ebp, eax
mov dword [esp + 0x44], edx
cmp byte [esp + 0x13], 0
jne 0x474800
mov eax, dword [esp + 0x3c]
lea esi, [esi + esi*4]
mov ecx, dword [eax + 4]
push dword [ecx + esi*4]
push dword [eax]
push str.automatic_index_on__s__s_
push 0x11c
call fcn.00466a50
add esp, 0x10
mov byte [esp + 0x13], 1
mov esi, dword [esp + 0x44]
mov ecx, ebp
and ecx, dword [esp + 0x24]
mov eax, esi
and eax, dword [esp + 0x18]
or ecx, eax
jne 0x47486c
mov eax, dword [esp + 0x14]
inc eax
push eax
push dword [esp + 0x2c]
mov dword [esp + 0x54], eax
mov eax, dword [esp + 0x80]
push dword [eax]
call fcn.004f6880
add esp, 0xc
test eax, eax
jne 0x475136
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x14]
or dword [esp + 0x24], ebp
mov ebp, dword [esp + 0x78]
mov eax, dword [eax + 0x30]
mov edx, dword [esp + 0x80]
mov dword [eax + ecx*4], edi
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x4c]
or eax, esi
mov dword [esp + 0x14], ecx
mov dword [esp + 0x18], eax
jmp 0x47487f
mov ebp, dword [esp + 0x78]
mov edx, dword [esp + 0x80]
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
add edi, 0x30
cmp edi, dword [esp + 0x34]
jb 0x4746a0
mov esi, dword [esp + 0x24]
mov edi, dword [esp + 0x28]
not eax
or eax, 0x80000000
not esi
mov word [edi + 0x28], cx
mov word [edi + 0x18], cx
mov dword [edi + 0x24], 0x4241
mov edi, dword [edx + 0x3c]
and eax, edi
and esi, dword [edx + 0x38]
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x24], esi
xor esi, esi
mov dword [esp + 0x4c], edi
movzx ecx, word [eax + 0x2a]
mov eax, 0x3f
mov dword [esp + 0x44], ecx
cmp ax, cx
jge 0x4748de
mov dword [esp + 0x38], eax
jmp 0x4748e9
movsx eax, cx
mov dword [esp + 0x38], eax
test eax, eax
jle 0x474927
mov ebx, dword [esp + 0x38]
mov ebp, dword [esp + 0x14]
mov edi, dword [esp + 0x18]
mov eax, 1
xor edx, edx
mov ecx, esi
call fcn.00402530
and eax, dword [esp + 0x24]
and edx, edi
or eax, edx
je 0x47490e
inc ebp
inc esi
cmp esi, ebx
jl 0x4748f5
mov ebx, dword [esp + 0x20]
mov edi, dword [esp + 0x4c]
mov ecx, dword [esp + 0x44]
mov dword [esp + 0x14], ebp
mov ebp, dword [esp + 0x78]
and edi, 0x80000000
xor eax, eax
or eax, edi
je 0x474945
movsx eax, cx
mov ecx, dword [esp + 0x14]
add ecx, 0xffffffc1
add ecx, eax
mov dword [esp + 0x14], ecx
jmp 0x474949
mov ecx, dword [esp + 0x14]
lea eax, [ecx + 1]
mov ecx, dword [ebp]
movzx eax, ax
movsx edi, ax
mov dword [esp + 0x40], eax
lea edx, [edi*4 + 7]
and edx, 0xfffffff8
lea eax, [edi*4 + 9]
add eax, edi
mov dword [esp + 0x4c], edx
and eax, 0xfffffff8
add edx, 0x48
add eax, edx
cdq
mov esi, eax
test ecx, ecx
je 0x47498c
push edx
push esi
push ecx
call fcn.004ad310
add esp, 0xc
jmp 0x4749f1
mov eax, esi
or eax, edx
je 0x4749ef
test edx, edx
ja 0x4749ef
jb 0x4749a0
cmp esi, 0x7fffff00
jae 0x4749ef
cmp dword [0x52e2d8], 0
je 0x4749e3
mov eax, dword [0x530c58]
test eax, eax
je 0x4749bc
push eax
call dword [0x52e328]
add esp, 4
lea eax, [esp + 0x44]
push eax
push esi
call fcn.00493a90
mov eax, dword [0x530c58]
add esp, 8
test eax, eax
je 0x4749dd
push eax
call dword [0x52e330]
add esp, 4
mov eax, dword [esp + 0x44]
jmp 0x4749f1
push esi
call dword [0x52e2f8]
add esp, 4
jmp 0x4749f1
xor eax, eax
mov dword [esp + 0x1c], eax
test eax, eax
je 0x47513a
push esi
mov esi, eax
push 0
push esi
call sub.MSVCRT.dll_memset
lea eax, [esi + 0x48]
add esp, 0xc
mov dword [esi + 0x20], eax
add eax, dword [esp + 0x4c]
mov dword [esi + 8], eax
lea eax, [eax + edi*2]
add eax, 2
mov dword [esi + 4], eax
lea eax, [eax + edi*2]
xor edi, edi
mov dword [esi + 0x1c], eax
mov eax, dword [esp + 0x40]
mov word [esi + 0x34], ax
dec eax
mov word [esi + 0x32], ax
mov eax, dword [esp + 0x28]
mov dword [esp + 0x40], edi
mov dword [esp + 0x44], edi
mov dword [eax + 0x20], esi
mov eax, dword [esp + 0x3c]
mov dword [esi], str.auto_index
mov dword [esi + 0xc], eax
mov esi, dword [esp + 0x7c]
mov esi, dword [esi + 0x14]
mov dword [esp + 0x30], esi
cmp esi, dword [esp + 0x34]
jae 0x474bd9
mov ebx, dword [esp + 0x1c]
mov edx, dword [esp + 0x80]
mov eax, dword [esi + 0x14]
cmp eax, dword [edx + 0x2c]
jne 0x474bc4
movzx ecx, word [esi + 0xc]
test cl, 0x82
je 0x474bc4
test byte [edx + 0x24], 8
je 0x474aa1
mov eax, dword [esi]
test byte [eax + 4], 1
jne 0x474aa1
test cl, cl
js 0x474bc4
mov ecx, dword [esi + 0x20]
mov eax, dword [esi + 0x24]
and ecx, dword [esp + 0x84]
and eax, dword [esp + 0x88]
or ecx, eax
jne 0x474bc4
mov ecx, dword [esi + 0x1c]
test ecx, ecx
js 0x474bc4
mov eax, dword [edx + 0x10]
lea ecx, [ecx + ecx*4]
push dword [esi]
mov eax, dword [eax + 4]
mov al, byte [eax + ecx*4 + 0xd]
mov byte [esp + 0x17], al
call fcn.00473e60
add esp, 4
cmp al, 0x42
jl 0x474b07
jne 0x474af5
xor eax, eax
cmp byte [esp + 0x13], 0x42
sete al
jmp 0x474aff
xor eax, eax
cmp byte [esp + 0x13], 0x43
setge al
test eax, eax
je 0x474bbd
mov ecx, dword [esi + 0x1c]
cmp ecx, 0x40
jl 0x474b1c
mov ecx, 0x80000000
xor eax, eax
mov dword [esp + 0x4c], ecx
jmp 0x474b2e
mov eax, 1
xor edx, edx
call fcn.00402530
mov ecx, edx
mov dword [esp + 0x4c], edx
and ecx, dword [esp + 0x44]
mov esi, eax
and esi, dword [esp + 0x40]
or esi, ecx
mov esi, dword [esp + 0x30]
jne 0x474bbd
or dword [esp + 0x40], eax
mov eax, dword [esp + 0x44]
or eax, dword [esp + 0x4c]
mov edx, dword [esi]
mov ecx, dword [ebx + 4]
mov dword [esp + 0x44], eax
mov ax, word [esi + 0x1c]
mov word [ecx + edi*2], ax
test dword [edx + 4], 0x200
je 0x474b6e
mov esi, dword [edx + 0xc]
mov eax, dword [edx + 0x10]
jmp 0x474b74
mov esi, dword [edx + 0x10]
mov eax, dword [edx + 0xc]
test dword [eax + 4], 0x100
je 0x474b80
push eax
jmp 0x474b9c
test esi, esi
je 0x474b8d
test dword [esi + 4], 0x100
jne 0x474b9b
push eax
push ebp
call fcn.004b24d0
add esp, 8
test eax, eax
jne 0x474ba9
push esi
push ebp
call fcn.004b24d0
add esp, 8
test eax, eax
je 0x474bad
mov ecx, dword [eax]
jmp 0x474bb2
mov ecx, 0x523b20
mov eax, dword [ebx + 0x20]
mov esi, dword [esp + 0x30]
mov dword [eax + edi*4], ecx
inc edi
mov edx, dword [esp + 0x80]
add esi, 0x30
mov dword [esp + 0x30], esi
cmp esi, dword [esp + 0x34]
jb 0x474a72
mov ebx, dword [esp + 0x20]
xor esi, esi
cmp dword [esp + 0x38], esi
jle 0x474c29
mov ebp, dword [esp + 0x1c]
mov ebx, dword [esp + 0x38]
lea esp, [esp]
mov eax, 1
xor edx, edx
mov ecx, esi
call fcn.00402530
and eax, dword [esp + 0x24]
and edx, dword [esp + 0x18]
or eax, edx
je 0x474c1c
mov eax, dword [ebp + 4]
mov word [eax + edi*2], si
mov eax, dword [ebp + 0x20]
mov dword [eax + edi*4], 0x523b20
inc edi
inc esi
cmp esi, ebx
jl 0x474bf0
mov ebx, dword [esp + 0x20]
mov ebp, dword [esp + 0x78]
mov ecx, dword [esp + 0x80]
xor eax, eax
mov edx, dword [esp + 0x1c]
mov ecx, dword [ecx + 0x3c]
and ecx, 0x80000000
or eax, ecx
je 0x474c6f
mov esi, dword [esp + 0x3c]
mov eax, 0x3f
cmp ax, word [esi + 0x2a]
jge 0x474c6f
mov ecx, eax
mov eax, dword [edx + 4]
mov word [eax + edi*2], cx
inc ecx
mov eax, dword [edx + 0x20]
mov dword [eax + edi*4], 0x523b20
inc edi
movsx eax, word [esi + 0x2a]
cmp ecx, eax
jl 0x474c54
mov eax, dword [edx + 4]
or ecx, 0xffffffff
mov word [eax + edi*2], cx
mov eax, dword [edx + 0x20]
mov ecx, dword [esp + 0x8c]
mov edx, dword [esp + 0x14]
inc edx
mov dword [eax + edi*4], 0x523b20
mov eax, dword [ebp + 0x28]
mov dword [ecx + 8], eax
inc dword [ebp + 0x28]
mov esi, dword [ecx + 8]
mov ecx, dword [ebx + 0x6c]
cmp dword [ebx + 0x70], ecx
jg 0x474cb4
push 0
push edx
push esi
push 0x63
push ebx
call fcn.00490570
add esp, 0x14
jmp 0x474ce3
lea eax, [ecx + 1]
mov dword [ebx + 0x6c], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [ebx + 0x68]
mov ebx, dword [esp + 0x20]
mov dword [eax + ecx*4], 0x63
mov dword [eax + ecx*4 + 4], esi
mov dword [eax + ecx*4 + 8], edx
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
push dword [esp + 0x1c]
mov esi, dword [ebp + 8]
push ebp
call fcn.004c1840
mov edx, eax
add esp, 8
test edx, edx
je 0x474d21
mov eax, dword [esi]
cmp byte [eax + 0x51], 0
je 0x474d0f
push edx
push 0xfffffffffffffff7
push eax
call fcn.0047d1f0
add esp, 0xc
jmp 0x474d21
mov eax, dword [esi + 0x6c]
lea ecx, [eax + eax*4]
mov eax, dword [esi + 0x68]
mov byte [eax + ecx*4 - 0x13], 0xf7
mov dword [eax + ecx*4 - 4], edx
mov edx, dword [esp + 0x8c]
movzx eax, byte [edx + 0x34]
lea ecx, [eax + eax*8]
mov eax, dword [esp + 0x7c]
mov eax, dword [eax]
mov eax, dword [eax + 4]
test byte [eax + ecx*8 + 0x30], 0x10
lea ebp, [eax + ecx*8]
je 0x474e30
mov ecx, dword [ebx + 0x6c]
mov edx, dword [ebp + 0x24]
mov dword [esp + 0x80], edx
mov dword [esp + 0x48], ecx
cmp dword [ebx + 0x70], ecx
jg 0x474d7a
push 0
push 0
push 0
push 0x45
push ebx
call fcn.00490570
mov edx, dword [esp + 0x94]
add esp, 0x14
mov dword [esp + 0x48], eax
jmp 0x474dad
lea eax, [ecx + 1]
mov dword [ebx + 0x6c], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [ebx + 0x68]
mov dword [eax + ecx*4], 0x45
mov dword [eax + ecx*4 + 4], 0
mov dword [eax + ecx*4 + 8], 0
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov ecx, dword [ebx + 0x6c]
mov esi, dword [ebp + 0x20]
cmp dword [ebx + 0x70], ecx
jg 0x474dd0
push esi
push 0
push edx
push 0xd
push ebx
call fcn.00490570
mov edx, dword [esp + 0x94]
add esp, 0x14
jmp 0x474dff
lea eax, [ecx + 1]
mov dword [ebx + 0x6c], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [ebx + 0x68]
mov ebx, dword [esp + 0x20]
mov dword [eax + ecx*4], 0xd
mov dword [eax + ecx*4 + 4], edx
mov dword [eax + ecx*4 + 8], 0
mov dword [eax + ecx*4 + 0xc], esi
mov dword [eax + ecx*4 + 0x10], 0
mov esi, dword [ebx + 0x6c]
cmp dword [ebx + 0x70], esi
jg 0x474e1b
push 0
push 0
push edx
push 0xe
push ebx
call fcn.00490570
add esp, 0x14
mov esi, eax
jmp 0x474e82
lea eax, [esi + 1]
mov dword [ebx + 0x6c], eax
lea ecx, [esi + esi*4]
mov eax, dword [ebx + 0x68]
mov dword [eax + ecx*4], 0xe
jmp 0x474e62
mov esi, dword [ebx + 0x6c]
mov edx, dword [edx + 4]
cmp dword [ebx + 0x70], esi
jg 0x474e4f
push 0
push 0
push edx
push 0x25
push ebx
call fcn.00490570
add esp, 0x14
mov esi, eax
jmp 0x474e82
lea eax, [esi + 1]
mov dword [ebx + 0x6c], eax
lea ecx, [esi + esi*4]
mov eax, dword [ebx + 0x68]
mov dword [eax + ecx*4], 0x25
mov ebx, dword [esp + 0x20]
mov dword [eax + ecx*4 + 0x10], 0
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 8], 0
mov dword [eax + ecx*4 + 4], edx
mov ecx, dword [esp + 0x2c]
test ecx, ecx
je 0x474eb0
mov eax, dword [esp + 0x78]
push 0x10
dec dword [eax + 0x38]
mov edx, dword [eax + 0x38]
push edx
push ecx
push eax
mov dword [esp + 0x60], edx
call fcn.004b2d40
mov eax, dword [esp + 0x38]
add esp, 0x10
or dword [eax + 0x24], 0x20000
mov ecx, dword [esp + 0x78]
mov al, byte [ecx + 0x13]
test al, al
jne 0x474ec3
inc dword [ecx + 0x2c]
mov eax, dword [ecx + 0x2c]
jmp 0x474ed2
dec al
mov byte [ecx + 0x13], al
movzx eax, al
mov eax, dword [ecx + eax*4 + 0x98]
push 0
push 0
push 0
push 0
push eax
mov dword [esp + 0x94], eax
mov eax, dword [esp + 0xa0]
push dword [eax + 4]
push dword [esp + 0x34]
push ecx
call fcn.004bda30
mov ecx, dword [ebx + 0x6c]
add esp, 0x20
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0x8c]
mov eax, dword [eax + 8]
mov dword [esp + 0x7c], eax
cmp dword [ebx + 0x70], ecx
jg 0x474f2e
mov edx, dword [esp + 0x80]
push 0
push edx
push eax
push 0x82
push ebx
call fcn.00490570
add esp, 0x14
jmp 0x474f64
mov edx, dword [esp + 0x7c]
lea eax, [ecx + 1]
mov dword [ebx + 0x6c], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [ebx + 0x68]
mov dword [eax + ecx*4 + 4], edx
mov edx, dword [esp + 0x80]
mov dword [eax + ecx*4], 0x82
mov dword [eax + ecx*4 + 8], edx
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov eax, dword [ebx + 0x6c]
test eax, eax
jle 0x474f7b
lea ecx, [eax + eax*4]
mov edx, 0x10
mov eax, dword [ebx + 0x68]
mov word [eax + ecx*4 - 0x12], dx
cmp dword [esp + 0x2c], 0
je 0x474fa9
mov ecx, dword [ebx + 0xc]
mov edx, dword [esp + 0x50]
not edx
mov eax, dword [ecx + 0x3c]
add eax, dword [ecx + 0x38]
jns 0x474fa0
push edx
push ebx
push ecx
call fcn.0049f060
add esp, 0xc
jmp 0x474fa9
mov ecx, dword [ecx + 0x40]
mov eax, dword [ebx + 0x6c]
mov dword [ecx + edx*4], eax
test byte [ebp + 0x30], 0x10
je 0x475057
mov ecx, dword [esp + 0x48]
test ecx, ecx
jns 0x474fbf
mov ecx, dword [ebx + 0x6c]
dec ecx
mov eax, dword [ebx]
cmp byte [eax + 0x51], 0
je 0x474fce
mov ecx, 0x530d04
jmp 0x474fd7
mov eax, dword [ebx + 0x68]
lea ecx, [ecx + ecx*4]
lea ecx, [eax + ecx*4]
mov eax, dword [esp + 0x4c]
add eax, edi
mov dword [ecx + 8], eax
mov eax, dword [esp + 0x8c]
push dword [eax + 8]
push dword [ebp + 0x28]
push dword [eax + 4]
mov eax, dword [esp + 0x84]
push esi
push eax
call fcn.004eb510
mov ecx, dword [ebx + 0x6c]
add esp, 0x14
cmp dword [ebx + 0x70], ecx
jg 0x475022
push 0
push esi
push 0
push 0xb
push ebx
call fcn.00490570
add esp, 0x14
and dword [ebp + 0x30], 0xffffffef
jmp 0x4750bf
lea eax, [ecx + 1]
mov dword [ebx + 0x6c], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [ebx + 0x68]
mov dword [eax + ecx*4], 0xb
mov dword [eax + ecx*4 + 4], 0
mov dword [eax + ecx*4 + 8], esi
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
and dword [ebp + 0x30], 0xffffffef
jmp 0x4750bf
mov eax, dword [esp + 0x8c]
lea edx, [esi + 1]
mov ecx, dword [ebx + 0x6c]
mov edi, dword [eax + 4]
cmp dword [ebx + 0x70], ecx
jg 0x47507d
push 0
push edx
push edi
push 5
push ebx
call fcn.00490570
add esp, 0x14
jmp 0x4750a8
lea eax, [ecx + 1]
mov dword [ebx + 0x6c], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [ebx + 0x68]
mov dword [eax + ecx*4], 5
mov dword [eax + ecx*4 + 4], edi
mov dword [eax + ecx*4 + 8], edx
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov eax, dword [ebx + 0x6c]
test eax, eax
jle 0x4750bf
lea ecx, [eax + eax*4]
mov edx, 3
mov eax, dword [ebx + 0x68]
mov word [eax + ecx*4 - 0x12], dx
mov edx, dword [ebx + 0x6c]
test esi, esi
jns 0x4750c9
lea esi, [edx - 1]
mov eax, dword [ebx]
cmp byte [eax + 0x51], 0
je 0x4750d8
mov eax, 0x530d04
jmp 0x4750e1
mov eax, dword [ebx + 0x68]
lea ecx, [esi + esi*4]
lea eax, [eax + ecx*4]
mov ecx, dword [esp + 0x80]
mov ebp, dword [esp + 0x78]
mov dword [eax + 8], edx
test ecx, ecx
je 0x475107
mov al, byte [ebp + 0x13]
cmp al, 8
jae 0x475107
movzx eax, al
mov dword [ebp + eax*4 + 0x98], ecx
inc byte [ebp + 0x13]
mov ecx, dword [esp + 0x54]
mov edx, dword [ebx + 0x6c]
test ecx, ecx
jns 0x475115
lea ecx, [edx - 1]
mov eax, dword [ebx]
cmp byte [eax + 0x51], 0
je 0x475127
mov eax, 0x530d04
mov dword [eax + 8], edx
jmp 0x47513a
mov eax, dword [ebx + 0x68]
lea ecx, [ecx + ecx*4]
mov dword [eax + ecx*4 + 8], edx
lea eax, [eax + ecx*4]
jmp 0x47513a
mov ebp, dword [esp + 0x78]
mov eax, dword [esp + 0x2c]
test eax, eax
je 0x47514e
push eax
push dword [ebp]
call fcn.004b2a40
add esp, 8
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x64
ret