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

Disassembly:
push 0xffffffffffffffff
push 0x5f37e6
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x708
push ebx
push ebp
push esi
push edi
xor ebp, ebp
lea ecx, [esp + 0x18]
mov dword [esp + 0x720], ebp
call fcn.005df190
lea ecx, [esp + 0x10]
mov byte [esp + 0x720], 1
call fcn.005df190
lea ecx, [esp + 0x14]
mov byte [esp + 0x720], 2
call fcn.005df190
lea ecx, [esp + 0x34]
mov byte [esp + 0x720], 3
call fcn.005df190
push 0x6292d0
lea eax, [esp + 0x7c]
push 0x63c118
push eax
mov byte [esp + 0x72c], 4
call fcn.005df262
mov eax, dword [eax]
push 0x6292cc
push eax
call dword [0x5fca64]
mov edi, eax
add esp, 8
cmp edi, ebp
lea ecx, [esp + 0x78]
mov dword [esp + 0x2c], edi
setne bl
call fcn.005df184
mov esi, dword [esp + 0x728]
test bl, bl
je 0x547c7c
mov dword [esp + 0x30], ebp
mov dword [esp + 0x38], ebp
test byte [edi + 0xc], 0x10
jne 0x547c4a
mov edx, dword [esp + 0x2c]
lea ecx, [esp + 0xd8]
push ecx
push 0x6292c8
push edx
call dword [0x5fca68]
add esp, 0xc
lea eax, [esp + 0x3f8]
lea ecx, [esp + 0xd8]
push 0x190
push eax
push 0xffffffffffffffff
push ecx
push ebp
push 0xfde9
call dword [0x5fc0a8]
lea edx, [esp + 0x3f8]
lea ecx, [esp + 0x18]
push edx
call fcn.005df27a
push 0x20
push 0x7f
lea ecx, [esp + 0x20]
call fcn.005df316
xor ebx, ebx
push ebp
push 0x6292c4
lea ecx, [esp + 0x20]
mov dword [esp + 0x24], ebx
call fcn.005df310
mov edi, eax
cmp edi, ebp
jl 0x546a7f
push edi
lea eax, [esp + 0x94]
push ebp
push eax
lea ecx, [esp + 0x24]
call fcn.005df30a
push eax
lea ecx, [esp + 0x14]
mov byte [esp + 0x724], 5
call fcn.005df274
lea ecx, [esp + 0x90]
mov byte [esp + 0x720], 4
call fcn.005df184
lea ebx, [edi + 1]
mov dword [esp + 0x1c], ebx
jmp 0x546ab9
mov ecx, dword [esp + 0x18]
lea edx, [esp + 0x48]
mov eax, dword [ecx - 8]
lea ecx, [esp + 0x18]
push eax
push ebp
push edx
call fcn.005df30a
push eax
lea ecx, [esp + 0x14]
mov byte [esp + 0x724], 6
call fcn.005df274
lea ecx, [esp + 0x48]
mov byte [esp + 0x720], 4
call fcn.005df184
cmp dword [esp + 0x30], ebp
jne 0x546acd
lea eax, [esp + 0x10]
lea ecx, [esp + 0x34]
push eax
call fcn.005df274
mov ecx, dword [esp + 0x72c]
mov edx, dword [esp + 0x10]
push ecx
push edx
call dword [0x5fca74]
add esp, 8
cmp eax, ebp
jne 0x547c2b
lea eax, [esp + 0x10]
mov ecx, esi
push eax
mov dword [esp + 0x3c], 1
call fcn.005df274
push ebx
push 0x6292c4
lea ecx, [esp + 0x20]
call fcn.005df310
mov edi, eax
cmp edi, ebp
jl 0x546b5a
mov ecx, edi
lea edx, [esp + 0xb8]
sub ecx, ebx
push ecx
push ebx
push edx
lea ecx, [esp + 0x24]
call fcn.005df30a
push eax
lea ecx, [esp + 0x14]
mov byte [esp + 0x724], 7
call fcn.005df274
lea ecx, [esp + 0xb8]
mov byte [esp + 0x720], 4
call fcn.005df184
lea ebx, [edi + 1]
mov dword [esp + 0x1c], ebx
jmp 0x546b96
mov eax, dword [esp + 0x18]
lea ecx, [esp + 0x50]
mov eax, dword [eax - 8]
sub eax, ebx
push eax
push ebx
push ecx
lea ecx, [esp + 0x24]
call fcn.005df30a
push eax
lea ecx, [esp + 0x14]
mov byte [esp + 0x724], 8
call fcn.005df274
lea ecx, [esp + 0x50]
mov byte [esp + 0x720], 4
call fcn.005df184
mov edx, dword [esp + 0x10]
push edx
call dword [0x5fca78]
add esp, 4
lea ecx, [esp + 0x18]
mov dword [esi + 4], eax
push ebx
push 0x6292c4
call fcn.005df310
mov edi, eax
cmp edi, ebp
jl 0x546c00
sub eax, ebx
lea ecx, [esp + 0x98]
push eax
push ebx
push ecx
lea ecx, [esp + 0x24]
call fcn.005df30a
push eax
lea ecx, [esp + 0x14]
mov byte [esp + 0x724], 9
call fcn.005df274
lea ecx, [esp + 0x98]
mov byte [esp + 0x720], 4
call fcn.005df184
lea ebx, [edi + 1]
mov dword [esp + 0x1c], ebx
jmp 0x546c3c
mov edx, dword [esp + 0x18]
lea ecx, [esp + 0x18]
mov eax, dword [edx - 8]
sub eax, ebx
push eax
lea eax, [esp + 0x5c]
push ebx
push eax
call fcn.005df30a
push eax
lea ecx, [esp + 0x14]
mov byte [esp + 0x724], 0xa
call fcn.005df274
lea ecx, [esp + 0x58]
mov byte [esp + 0x720], 4
call fcn.005df184
mov ecx, dword [esp + 0x10]
push ecx
call dword [0x5fca78]
add esp, 4
lea ecx, [esp + 0x18]
mov dword [esi + 8], eax
push ebx
push 0x6292c4
call fcn.005df310
mov edi, eax
cmp edi, ebp
jl 0x546ca6
mov edx, edi
lea eax, [esp + 0xd4]
sub edx, ebx
lea ecx, [esp + 0x18]
push edx
push ebx
push eax
call fcn.005df30a
push eax
lea ecx, [esp + 0x14]
mov byte [esp + 0x724], 0xb
call fcn.005df274
lea ecx, [esp + 0xd4]
mov byte [esp + 0x720], 4
call fcn.005df184
inc edi
mov dword [esp + 0x1c], edi
jmp 0x546ce2
mov ecx, dword [esp + 0x18]
lea edx, [esp + 0x60]
mov eax, dword [ecx - 8]
lea ecx, [esp + 0x18]
sub eax, ebx
push eax
push ebx
push edx
call fcn.005df30a
push eax
lea ecx, [esp + 0x14]
mov byte [esp + 0x724], 0xc
call fcn.005df274
lea ecx, [esp + 0x60]
mov byte [esp + 0x720], 4
call fcn.005df184
lea ecx, [esi + 0x2cc]
push 0x629274
xor ebx, ebx
mov dword [esi + 0x2e0], ebp
mov dword [esi + 0x2e4], ebp
mov dword [esi + 0x2e8], ebp
mov dword [esi + 0x2ec], ebp
call fcn.005df27a
lea eax, [esi + 0xc]
mov dword [esp + 0x24], ebp
mov dword [esp + 0x20], eax
push ebx
push 0x629308
lea ecx, [esp + 0x18]
call fcn.005df310
mov edi, eax
cmp edi, ebp
jl 0x546f77
mov ecx, edi
lea edx, [esp + 0xa0]
sub ecx, ebx
push ecx
push ebx
push edx
lea ecx, [esp + 0x1c]
call fcn.005df30a
push eax
lea ecx, [esp + 0x18]
mov byte [esp + 0x724], 0xd
call fcn.005df274
lea ecx, [esp + 0xa0]
mov byte [esp + 0x720], 4
call fcn.005df184
mov eax, dword [esp + 0x14]
lea ebx, [edi + 1]
push eax
call dword [0x5fca78]
mov ecx, dword [esp + 0x24]
add esp, 4
dec eax
cmp eax, ebp
mov dword [ecx], eax
jne 0x546ed3
mov edx, dword [esp + 0x14]
mov edi, dword [0x5fca74]
push str.1_1:2:3_
push edx
call edi
add esp, 8
cmp eax, ebp
jne 0x546dc2
mov edi, 1
mov dword [esi + 0x2e0], edi
mov dword [esi + 0x2e8], edi
mov dword [esi + 0x2ec], edi
jmp 0x546ed8
mov eax, dword [esp + 0x14]
push str.1_1:2_
push eax
call edi
add esp, 8
cmp eax, ebp
jne 0x546df1
mov edi, 1
mov dword [esi + 0x2ec], ebp
mov dword [esi + 0x2e0], edi
mov dword [esi + 0x2e8], edi
jmp 0x546ed8
mov ecx, dword [esp + 0x14]
push str.1_1:3_
push ecx
call edi
add esp, 8
cmp eax, ebp
jne 0x546e20
mov edi, 1
mov dword [esi + 0x2e8], ebp
mov dword [esi + 0x2e0], edi
mov dword [esi + 0x2ec], edi
jmp 0x546ed8
mov edx, dword [esp + 0x14]
push str.1_2:3_
push edx
call edi
add esp, 8
cmp eax, ebp
jne 0x546e4f
mov edi, 1
mov dword [esi + 0x2e0], ebp
mov dword [esi + 0x2e8], edi
mov dword [esi + 0x2ec], edi
jmp 0x546ed8
mov eax, dword [esp + 0x14]
push str.1_1_
push eax
call edi
add esp, 8
cmp eax, ebp
jne 0x546e7b
mov edi, 1
mov dword [esi + 0x2e8], ebp
mov dword [esi + 0x2e0], edi
mov dword [esi + 0x2ec], ebp
jmp 0x546ed8
mov ecx, dword [esp + 0x14]
push str.1_2_
push ecx
call edi
add esp, 8
cmp eax, ebp
jne 0x546ea7
mov edi, 1
mov dword [esi + 0x2e0], ebp
mov dword [esi + 0x2e8], edi
mov dword [esi + 0x2ec], ebp
jmp 0x546ed8
mov edx, dword [esp + 0x14]
push str.1_3_
push edx
call edi
add esp, 8
cmp eax, ebp
jne 0x546ed3
mov edi, 1
mov dword [esi + 0x2e0], ebp
mov dword [esi + 0x2e8], ebp
mov dword [esi + 0x2ec], edi
jmp 0x546ed8
mov edi, 1
mov eax, dword [esp + 0x20]
cmp dword [eax], 2
jne 0x546f55
push 0x629374
lea ecx, [esp + 0x18]
call fcn.005df36a
cmp eax, ebp
jl 0x546f3f
mov ecx, dword [esp + 0x14]
mov dword [esi + 0x2e4], edi
lea edx, [esp + 0x68]
mov ecx, dword [ecx - 8]
sub ecx, eax
add eax, 4
sub ecx, 6
push ecx
push eax
push edx
lea ecx, [esp + 0x20]
call fcn.005df30a
push eax
lea ecx, [esi + 0x2cc]
mov byte [esp + 0x724], 0xe
call fcn.005df274
lea ecx, [esp + 0x68]
mov byte [esp + 0x720], 4
call fcn.005df184
jmp 0x546f55
push 0x629274
lea ecx, [esi + 0x2cc]
mov dword [esi + 0x2e4], ebp
call fcn.005df27a
mov eax, dword [esp + 0x24]
mov edx, dword [esp + 0x20]
inc eax
add edx, 4
cmp eax, 3
mov dword [esp + 0x24], eax
mov dword [esp + 0x20], edx
jl 0x546d17
jmp 0x5471b6
mov eax, dword [esp + 0x10]
lea ecx, [esp + 0xc0]
mov eax, dword [eax - 8]
sub eax, ebx
push eax
push ebx
push ecx
lea ecx, [esp + 0x1c]
call fcn.005df30a
push eax
lea ecx, [esp + 0x18]
mov byte [esp + 0x724], 0xf
call fcn.005df274
lea ecx, [esp + 0xc0]
mov byte [esp + 0x720], 4
call fcn.005df184
mov edx, dword [esp + 0x14]
push edx
call dword [0x5fca78]
mov ebx, dword [esp + 0x28]
add esp, 4
dec eax
cmp eax, ebp
mov dword [esi + ebx*4 + 0xc], eax
jne 0x54711e
mov eax, dword [esp + 0x14]
mov edi, dword [0x5fca74]
push str.1_1:2:3_
push eax
call edi
add esp, 8
cmp eax, ebp
jne 0x54700d
mov edi, 1
mov dword [esi + 0x2e0], edi
mov dword [esi + 0x2e8], edi
mov dword [esi + 0x2ec], edi
jmp 0x547123
mov ecx, dword [esp + 0x14]
push str.1_1:2_
push ecx
call edi
add esp, 8
cmp eax, ebp
jne 0x54703c
mov edi, 1
mov dword [esi + 0x2ec], ebp
mov dword [esi + 0x2e0], edi
mov dword [esi + 0x2e8], edi
jmp 0x547123
mov edx, dword [esp + 0x14]
push str.1_1:3_
push edx
call edi
add esp, 8
cmp eax, ebp
jne 0x54706b
mov edi, 1
mov dword [esi + 0x2e8], ebp
mov dword [esi + 0x2e0], edi
mov dword [esi + 0x2ec], edi
jmp 0x547123
mov eax, dword [esp + 0x14]
push str.1_2:3_
push eax
call edi
add esp, 8
cmp eax, ebp
jne 0x54709a
mov edi, 1
mov dword [esi + 0x2e0], ebp
mov dword [esi + 0x2e8], edi
mov dword [esi + 0x2ec], edi
jmp 0x547123
mov ecx, dword [esp + 0x14]
push str.1_1_
push ecx
call edi
add esp, 8
cmp eax, ebp
jne 0x5470c6
mov edi, 1
mov dword [esi + 0x2e8], ebp
mov dword [esi + 0x2e0], edi
mov dword [esi + 0x2ec], ebp
jmp 0x547123
mov edx, dword [esp + 0x14]
push str.1_2_
push edx
call edi
add esp, 8
cmp eax, ebp
jne 0x5470f2
mov edi, 1
mov dword [esi + 0x2e0], ebp
mov dword [esi + 0x2e8], edi
mov dword [esi + 0x2ec], ebp
jmp 0x547123
mov eax, dword [esp + 0x14]
push str.1_3_
push eax
call edi
add esp, 8
cmp eax, ebp
jne 0x54711e
mov edi, 1
mov dword [esi + 0x2e0], ebp
mov dword [esi + 0x2e8], ebp
mov dword [esi + 0x2ec], edi
jmp 0x547123
mov edi, 1
cmp dword [esi + ebx*4 + 0xc], 2
jne 0x54719e
push 0x629374
lea ecx, [esp + 0x18]
call fcn.005df36a
cmp eax, ebp
jl 0x547188
mov ecx, dword [esp + 0x14]
mov dword [esi + 0x2e4], edi
lea edx, [esp + 0x70]
mov ecx, dword [ecx - 8]
sub ecx, eax
add eax, 4
sub ecx, 6
push ecx
push eax
push edx
lea ecx, [esp + 0x20]
call fcn.005df30a
push eax
lea ecx, [esi + 0x2cc]
mov byte [esp + 0x724], 0x10
call fcn.005df274
lea ecx, [esp + 0x70]
mov byte [esp + 0x720], 4
call fcn.005df184
jmp 0x54719e
push 0x629274
lea ecx, [esi + 0x2cc]
mov dword [esi + 0x2e4], ebp
call fcn.005df27a
lea eax, [ebx + 1]
cmp eax, 3
jge 0x5471b6
mov ecx, 3
lea edi, [esi + eax*4 + 0xc]
sub ecx, eax
or eax, 0xffffffff
rep stosd dword es:[edi], eax
mov ebx, dword [esp + 0x1c]
lea ecx, [esp + 0x18]
push ebx
push 0x6292c4
call fcn.005df310
mov edi, eax
cmp edi, ebp
jl 0x547211
sub eax, ebx
lea ecx, [esp + 0xa8]
push eax
push ebx
push ecx
lea ecx, [esp + 0x24]
call fcn.005df30a
push eax
lea ecx, [esp + 0x14]
mov byte [esp + 0x724], 0x11
call fcn.005df274
lea ecx, [esp + 0xa8]
mov byte [esp + 0x720], 4
call fcn.005df184
inc edi
mov dword [esp + 0x1c], edi
jmp 0x54724d
mov edx, dword [esp + 0x18]
lea ecx, [esp + 0x18]
mov eax, dword [edx - 8]
sub eax, ebx
push eax
lea eax, [esp + 0x40]
push ebx
push eax
call fcn.005df30a
push eax
lea ecx, [esp + 0x14]
mov byte [esp + 0x724], 0x12
call fcn.005df274
lea ecx, [esp + 0x3c]
mov byte [esp + 0x720], 4
call fcn.005df184
mov eax, dword [esp + 0x10]
mov ecx, dword [eax - 8]
cmp word [eax + ecx*2 - 2], 0x2a
jne 0x5472a3
mov eax, ecx
lea ecx, [esp + 0xd0]
dec eax
push eax
push ecx
lea ecx, [esp + 0x18]
call fcn.005df364
push eax
lea ecx, [esp + 0x14]
mov byte [esp + 0x724], 0x13
call fcn.005df274
lea ecx, [esp + 0xd0]
mov byte [esp + 0x720], 4
call fcn.005df184
mov dword [esi + 0x2d0], 1
jmp 0x5472a9
mov dword [esi + 0x2d0], ebp
lea edx, [esi + 0x4c]
xor edi, edi
mov dword [esp + 0x20], edx
push edi
push 0x629308
lea ecx, [esp + 0x18]
call fcn.005df310
mov ebx, eax
test ebx, ebx
jl 0x547324
sub eax, edi
lea ecx, [esp + 0x80]
push eax
push edi
push ecx
lea ecx, [esp + 0x1c]
call fcn.005df30a
push eax
lea ecx, [esp + 0x18]
mov byte [esp + 0x724], 0x14
call fcn.005df274
lea ecx, [esp + 0x80]
mov byte [esp + 0x720], 4
call fcn.005df184
lea edi, [ebx + 1]
mov ebx, dword [esp + 0x20]
lea edx, [esp + 0x14]
mov ecx, ebx
push edx
call fcn.005df274
inc ebp
add ebx, 4
cmp ebp, 0x40
mov dword [esp + 0x20], ebx
jl 0x5472b2
jmp 0x547397
mov eax, dword [esp + 0x10]
lea ecx, [esp + 0xb0]
mov eax, dword [eax - 8]
sub eax, edi
push eax
push edi
push ecx
lea ecx, [esp + 0x1c]
call fcn.005df30a
push eax
lea ecx, [esp + 0x18]
mov byte [esp + 0x724], 0x15
call fcn.005df274
lea ecx, [esp + 0xb0]
mov byte [esp + 0x720], 4
call fcn.005df184
lea edx, [esp + 0x14]
lea ecx, [esi + ebp*4 + 0x4c]
push edx
call fcn.005df274
inc ebp
cmp ebp, 0x40
jge 0x547397
mov edi, 0x40
lea ebx, [esi + ebp*4 + 0x4c]
sub edi, ebp
push 0x635508
mov ecx, ebx
call fcn.005df27a
add ebx, 4
dec edi
jne 0x547385
mov ebx, dword [esp + 0x1c]
lea ecx, [esp + 0x18]
push ebx
push 0x6292c4
call fcn.005df310
mov edi, eax
test edi, edi
jl 0x5473f2
sub eax, ebx
lea ecx, [esp + 0x88]
push eax
push ebx
push ecx
lea ecx, [esp + 0x24]
call fcn.005df30a
push eax
lea ecx, [esp + 0x14]
mov byte [esp + 0x724], 0x16
call fcn.005df274
lea ecx, [esp + 0x88]
mov byte [esp + 0x720], 4
call fcn.005df184
inc edi
mov dword [esp + 0x1c], edi
jmp 0x547434
mov edx, dword [esp + 0x18]
lea ecx, [esp + 0x18]
mov eax, dword [edx - 8]
sub eax, ebx
push eax
lea eax, [esp + 0xcc]
push ebx
push eax
call fcn.005df30a
push eax
lea ecx, [esp + 0x14]
mov byte [esp + 0x724], 0x17
call fcn.005df274
lea ecx, [esp + 0xc8]
mov byte [esp + 0x720], 4
call fcn.005df184
lea ecx, [esi + 0x14c]
xor edi, edi
xor ebp, ebp
mov dword [esp + 0x20], ecx
push edi
push 0x629308
lea ecx, [esp + 0x18]
call fcn.005df310
mov ebx, eax
test ebx, ebx
jl 0x5474b0
mov edx, ebx
lea eax, [esp + 0x40]
sub edx, edi
lea ecx, [esp + 0x10]
push edx
push edi
push eax
call fcn.005df30a
push eax
lea ecx, [esp + 0x18]
mov byte [esp + 0x724], 0x18
call fcn.005df274
lea ecx, [esp + 0x40]
mov byte [esp + 0x720], 4
call fcn.005df184
lea edi, [ebx + 1]
mov ebx, dword [esp + 0x20]
lea ecx, [esp + 0x14]
push ecx
mov ecx, ebx
call fcn.005df274
inc ebp
add ebx, 4
cmp ebp, 0x20
mov dword [esp + 0x20], ebx
jl 0x547442
jmp 0x547523
mov edx, dword [esp + 0x10]
lea ecx, [esp + 0x10]
mov eax, dword [edx - 8]
sub eax, edi
push eax
lea eax, [esp + 0x48]
push edi
push eax
call fcn.005df30a
push eax
lea ecx, [esp + 0x18]
mov byte [esp + 0x724], 0x19
call fcn.005df274
lea ecx, [esp + 0x44]
mov byte [esp + 0x720], 4
call fcn.005df184
lea ecx, [esp + 0x14]
push ecx
lea ecx, [esi + ebp*4 + 0x14c]
call fcn.005df274
inc ebp
cmp ebp, 0x20
jge 0x547523
mov edi, 0x20
lea ebx, [esi + ebp*4 + 0x14c]
sub edi, ebp
push 0x635508
mov ecx, ebx
call fcn.005df27a
add ebx, 4
dec edi
jne 0x547511
mov ebp, dword [esp + 0x1c]
lea ecx, [esp + 0x18]
push ebp
push 0x6292c4
call fcn.005df310
mov ebx, eax
test ebx, ebx
jl 0x54757a
mov edx, ebx
lea eax, [esp + 0x4c]
sub edx, ebp
lea ecx, [esp + 0x18]
push edx
push ebp
push eax
call fcn.005df30a
push eax
lea ecx, [esp + 0x14]
mov byte [esp + 0x724], 0x1a
call fcn.005df274
lea ecx, [esp + 0x4c]
mov byte [esp + 0x720], 4
call fcn.005df184
inc ebx
mov dword [esp + 0x1c], ebx
jmp 0x5475b6
mov ecx, dword [esp + 0x18]
lea edx, [esp + 0x54]
mov eax, dword [ecx - 8]
lea ecx, [esp + 0x18]
sub eax, ebp
push eax
push ebp
push edx
call fcn.005df30a
push eax
lea ecx, [esp + 0x14]
mov byte [esp + 0x724], 0x1b
call fcn.005df274
lea ecx, [esp + 0x54]
mov byte [esp + 0x720], 4
call fcn.005df184
push ecx
lea eax, [esp + 0x14]
mov ecx, esp
mov dword [esp + 0x2c], esp
push eax
xor edi, edi
call fcn.005df334
lea ecx, [esp + 0x60]
push ecx
call fcn.00544640
add esp, 8
lea ebx, [esi + 0x2f0]
push eax
mov ecx, ebx
mov byte [esp + 0x724], 0x1c
call fcn.005df274
lea ecx, [esp + 0x5c]
mov byte [esp + 0x720], 4
call fcn.005df184
mov edx, dword [ebx]
mov ebp, dword [0x5fca74]
push 0x6292b4
push edx
call ebp
add esp, 8
test eax, eax
jne 0x54761c
mov dword [esi + 0x2d8], eax
jmp 0x547660
mov eax, dword [ebx]
push 0x629420
push eax
call ebp
add esp, 8
test eax, eax
jne 0x547639
mov dword [esi + 0x2d8], 1
jmp 0x547660
mov ecx, dword [ebx]
push 0x62941c
push ecx
call ebp
add esp, 8
test eax, eax
jne 0x547656
mov dword [esi + 0x2d8], 2
jmp 0x547660
mov dword [esi + 0x2d8], 3
xor eax, eax
lea ebp, [esi + 0x1cc]
mov dword [esi + 0x2f4], eax
mov dword [esp + 0x28], eax
mov dword [esp + 0x24], eax
push edi
push 0x62b5e4
lea ecx, [esp + 0x18]
call fcn.005df310
push edi
push 0x629308
lea ecx, [esp + 0x18]
mov ebx, eax
call fcn.005df310
test eax, eax
mov dword [esp + 0x20], eax
jge 0x54773f
test ebx, ebx
jl 0x547799
mov eax, dword [esp + 0x28]
test eax, eax
jne 0x5476c7
mov edx, dword [esp + 0x24]
mov dword [esp + 0x28], 1
add edx, 2
mov dword [esi + 0x2f4], edx
mov eax, ebx
lea ecx, [esp + 0x6c]
sub eax, edi
push eax
push edi
push ecx
lea ecx, [esp + 0x1c]
call fcn.005df30a
push eax
lea ecx, [esp + 0x18]
mov byte [esp + 0x724], 0x1e
call fcn.005df274
lea ecx, [esp + 0x6c]
mov byte [esp + 0x720], 4
call fcn.005df184
lea edx, [esp + 0x14]
mov ecx, ebp
push edx
lea edi, [ebx + 1]
call fcn.005df274
mov edx, dword [esp + 0x24]
add ebp, 4
inc edx
push 0x635508
mov ecx, ebp
mov dword [esp + 0x28], edx
call fcn.005df27a
mov eax, dword [esp + 0x24]
add ebp, 4
inc eax
cmp eax, 0x40
mov dword [esp + 0x24], eax
jl 0x547676
jmp 0x547812
cmp ebx, dword [esp + 0x20]
jge 0x54774d
test ebx, ebx
jge 0x5476aa
mov ebx, dword [esp + 0x20]
lea eax, [esp + 0x64]
mov edx, ebx
lea ecx, [esp + 0x10]
sub edx, edi
push edx
push edi
push eax
call fcn.005df30a
push eax
lea ecx, [esp + 0x18]
mov byte [esp + 0x724], 0x1d
call fcn.005df274
lea ecx, [esp + 0x64]
mov byte [esp + 0x720], 4
call fcn.005df184
lea ecx, [esp + 0x14]
lea edi, [ebx + 1]
push ecx
mov ecx, ebp
call fcn.005df274
jmp 0x547725
mov eax, dword [esp + 0x10]
lea ecx, [esp + 0x74]
mov eax, dword [eax - 8]
sub eax, edi
push eax
push edi
push ecx
lea ecx, [esp + 0x1c]
call fcn.005df30a
push eax
lea ecx, [esp + 0x18]
mov byte [esp + 0x724], 0x1f
call fcn.005df274
lea ecx, [esp + 0x74]
mov byte [esp + 0x720], 4
call fcn.005df184
mov edi, dword [esp + 0x24]
lea edx, [esp + 0x14]
push edx
lea ecx, [esi + edi*4 + 0x1cc]
call fcn.005df274
lea eax, [edi + 1]
cmp eax, 0x40
jge 0x547812
mov edi, 0x40
lea ebx, [esi + eax*4 + 0x1cc]
sub edi, eax
push 0x635508
mov ecx, ebx
call fcn.005df27a
add ebx, 4
dec edi
jne 0x547800
mov ebx, dword [esp + 0x1c]
lea ecx, [esp + 0x18]
push ebx
push 0x6292c4
call fcn.005df310
mov edi, eax
test edi, edi
jl 0x547867
sub eax, ebx
lea ecx, [esp + 0x7c]
push eax
push ebx
push ecx
lea ecx, [esp + 0x24]
call fcn.005df30a
push eax
lea ecx, [esp + 0x14]
mov byte [esp + 0x724], 0x20
call fcn.005df274
lea ecx, [esp + 0x7c]
mov byte [esp + 0x720], 4
call fcn.005df184
inc edi
mov dword [esp + 0x1c], edi
jmp 0x5478a9
mov edx, dword [esp + 0x18]
lea ecx, [esp + 0x18]
mov eax, dword [edx - 8]
sub eax, ebx
push eax
lea eax, [esp + 0x88]
push ebx
push eax
call fcn.005df30a
push eax
lea ecx, [esp + 0x14]
mov byte [esp + 0x724], 0x21
call fcn.005df274
lea ecx, [esp + 0x84]
mov byte [esp + 0x720], 4
call fcn.005df184
lea ecx, [esi + 0x18]
xor edi, edi
xor ebp, ebp
mov dword [esp + 0x28], ecx
push edi
push 0x629308
lea ecx, [esp + 0x18]
call fcn.005df310
mov ebx, eax
test ebx, ebx
jl 0x54792f
mov edx, ebx
lea eax, [esp + 0x8c]
sub edx, edi
lea ecx, [esp + 0x10]
push edx
push edi
push eax
call fcn.005df30a
push eax
lea ecx, [esp + 0x18]
mov byte [esp + 0x724], 0x22
call fcn.005df274
lea ecx, [esp + 0x8c]
mov byte [esp + 0x720], 4
call fcn.005df184
mov ecx, dword [esp + 0x14]
lea edi, [ebx + 1]
push ecx
call dword [0x5fca78]
mov edx, eax
mov eax, dword [esp + 0x2c]
add esp, 4
dec edx
mov dword [eax], edx
inc ebp
add eax, 4
cmp ebp, 5
mov dword [esp + 0x28], eax
jl 0x5478b4
jmp 0x54799a
mov eax, dword [esp + 0x10]
lea ecx, [esp + 0x94]
mov eax, dword [eax - 8]
sub eax, edi
push eax
push edi
push ecx
lea ecx, [esp + 0x1c]
call fcn.005df30a
push eax
lea ecx, [esp + 0x18]
mov byte [esp + 0x724], 0x23
call fcn.005df274
lea ecx, [esp + 0x94]
mov byte [esp + 0x720], 4
call fcn.005df184
mov edx, dword [esp + 0x14]
push edx
call dword [0x5fca78]
add esp, 4
dec eax
mov dword [esi + ebp*4 + 0x18], eax
inc ebp
cmp ebp, 5
jge 0x54799a
mov ecx, 5
lea edi, [esi + ebp*4 + 0x18]
sub ecx, ebp
or eax, 0xffffffff
rep stosd dword es:[edi], eax
mov ebx, dword [esp + 0x1c]
lea ecx, [esp + 0x18]
push ebx
push 0x6292c4
call fcn.005df310
mov edi, eax
xor ebp, ebp
cmp edi, ebp
jl 0x5479f7
sub eax, ebx
lea ecx, [esp + 0x9c]
push eax
push ebx
push ecx
lea ecx, [esp + 0x24]
call fcn.005df30a
push eax
lea ecx, [esp + 0x14]
mov byte [esp + 0x724], 0x24
call fcn.005df274
lea ecx, [esp + 0x9c]
mov byte [esp + 0x720], 4
call fcn.005df184
inc edi
mov dword [esp + 0x1c], edi
jmp 0x547a39
mov edx, dword [esp + 0x18]
lea ecx, [esp + 0x18]
mov eax, dword [edx - 8]
sub eax, ebx
push eax
lea eax, [esp + 0xa8]
push ebx
push eax
call fcn.005df30a
push eax
lea ecx, [esp + 0x14]
mov byte [esp + 0x724], 0x25
call fcn.005df274
lea ecx, [esp + 0xa4]
mov byte [esp + 0x720], 4
call fcn.005df184
mov eax, dword [esp + 0x10]
mov ecx, dword [eax - 8]
cmp word [eax + ecx*2 - 2], 0x2a
jne 0x547a8b
mov eax, ecx
lea ecx, [esp + 0xac]
dec eax
push eax
push ecx
lea ecx, [esp + 0x18]
call fcn.005df364
push eax
lea ecx, [esp + 0x14]
mov byte [esp + 0x724], 0x26
call fcn.005df274
lea ecx, [esp + 0xac]
mov byte [esp + 0x720], 4
call fcn.005df184
mov dword [esi + 0x2d4], ebp
jmp 0x547a95
mov dword [esi + 0x2d4], 1
lea edx, [esi + 0x40]
xor edi, edi
mov dword [esp + 0x28], edx
push edi
push 0x629308
lea ecx, [esp + 0x18]
call fcn.005df310
mov ebx, eax
test ebx, ebx
jl 0x547b17
sub eax, edi
lea ecx, [esp + 0xb4]
push eax
push edi
push ecx
lea ecx, [esp + 0x1c]
call fcn.005df30a
push eax
lea ecx, [esp + 0x18]
mov byte [esp + 0x724], 0x27
call fcn.005df274
lea ecx, [esp + 0xb4]
mov byte [esp + 0x720], 4
call fcn.005df184
mov edx, dword [esp + 0x14]
lea edi, [ebx + 1]
push edx
call dword [0x5fca78]
mov ecx, eax
mov eax, dword [esp + 0x2c]
add esp, 4
dec ecx
mov dword [eax], ecx
inc ebp
add eax, 4
cmp ebp, 3
mov dword [esp + 0x28], eax
jl 0x547a9e
jmp 0x547b84
mov edx, dword [esp + 0x10]
lea ecx, [esp + 0x10]
mov eax, dword [edx - 8]
sub eax, edi
push eax
lea eax, [esp + 0xc0]
push edi
push eax
call fcn.005df30a
push eax
lea ecx, [esp + 0x18]
mov byte [esp + 0x724], 0x28
call fcn.005df274
lea ecx, [esp + 0xbc]
mov byte [esp + 0x720], 4
call fcn.005df184
mov ecx, dword [esp + 0x14]
push ecx
call dword [0x5fca78]
add esp, 4
dec eax
mov dword [esi + ebp*4 + 0x40], eax
lea eax, [ebp + 1]
cmp eax, 3
jge 0x547b84
mov ecx, 3
lea edi, [esi + eax*4 + 0x40]
sub ecx, eax
or eax, 0xffffffff
rep stosd dword es:[edi], eax
mov edi, dword [esp + 0x1c]
lea ecx, [esp + 0x18]
push edi
push 0x6292c4
call fcn.005df310
test eax, eax
jl 0x547bd3
sub eax, edi
lea edx, [esp + 0xc4]
push eax
push edi
push edx
lea ecx, [esp + 0x24]
call fcn.005df30a
push eax
lea ecx, [esp + 0x14]
mov byte [esp + 0x724], 0x29
call fcn.005df274
mov byte [esp + 0x720], 4
lea ecx, [esp + 0xc4]
jmp 0x547c10
mov eax, dword [esp + 0x18]
lea ecx, [esp + 0xcc]
mov eax, dword [eax - 8]
sub eax, edi
push eax
push edi
push ecx
lea ecx, [esp + 0x24]
call fcn.005df30a
push eax
lea ecx, [esp + 0x14]
mov byte [esp + 0x724], 0x2a
call fcn.005df274
mov byte [esp + 0x720], 4
lea ecx, [esp + 0xcc]
call fcn.005df184
mov edx, dword [esp + 0x10]
push edx
call dword [0x5fca78]
add esp, 4
mov dword [esi + 0x2dc], eax
xor ebp, ebp
mov eax, dword [esp + 0x2c]
mov edx, dword [esp + 0x30]
inc edx
mov cl, byte [eax + 0xc]
mov dword [esp + 0x30], edx
test cl, 0x10
je 0x5469c6
cmp dword [esp + 0x38], ebp
jne 0x547c6e
lea ecx, [esp + 0x34]
push ecx
lea ecx, [esp + 0x730]
call fcn.005df274
mov edi, dword [esp + 0x2c]
push edi
call dword [0x5fc9a0]
add esp, 4
jmp 0x5469bc
mov edx, dword [esp + 0x2c]
push edx
call dword [0x5fca70]
add esp, 4
or ecx, 0xffffffff
xor eax, eax
mov dword [esi + 0x2c], ecx
mov dword [esi + 0x30], ecx
mov dword [esi + 0x34], ecx
mov dword [esi + 0x38], ecx
mov dword [esi + 0x3c], ecx
mov ecx, dword [esi + 0xc]
cmp ecx, ebp
mov ebx, 2
je 0x547cb9
mov edi, dword [esi + 0x10]
cmp edi, ebp
je 0x547cb9
mov edx, dword [esi + 0x14]
cmp edx, ebp
je 0x547cb9
cmp ecx, 1
je 0x547cb9
cmp edi, 1
je 0x547cb9
cmp edx, 1
jne 0x547cc1
mov dword [esi + 0x2c], ebp
mov eax, 1
cmp dword [esi + 8], ebx
jge 0x547cdb
cmp dword [esi + 0xc], ebx
je 0x547cd5
cmp dword [esi + 0x10], ebx
je 0x547cd5
cmp dword [esi + 0x14], ebx
jne 0x547d0b
mov dword [esi + eax*4 + 0x2c], ebx
jmp 0x547d0a
mov dword [esi + eax*4 + 0x2c], 1
mov ecx, dword [esi + 0xc]
inc eax
cmp ecx, ebx
je 0x547cf5
cmp dword [esi + 0x10], ebx
je 0x547cf5
cmp dword [esi + 0x14], ebx
jne 0x547cfa
mov dword [esi + eax*4 + 0x2c], ebx
inc eax
cmp dword [esi + 0x2ec], ebp
je 0x547d0b
mov dword [esi + eax*4 + 0x2c], 3
inc eax
mov ecx, dword [esi + 4]
cmp ecx, 5
je 0x547d18
cmp ecx, 6
jne 0x547d20
mov dword [esi + eax*4 + 0x2c], 4
lea ecx, [esp + 0x34]
mov byte [esp + 0x720], 3
call fcn.005df184
lea ecx, [esp + 0x14]
mov byte [esp + 0x720], 2
call fcn.005df184
lea ecx, [esp + 0x10]
mov byte [esp + 0x720], 1
call fcn.005df184
lea ecx, [esp + 0x18]
mov byte [esp + 0x720], 0
call fcn.005df184
lea ecx, [esp + 0x72c]
mov dword [esp + 0x720], 0xffffffff
call fcn.005df184
mov ecx, dword [esp + 0x718]
pop edi
pop esi
pop ebp
xor eax, eax
mov dword fs:[0], ecx
pop ebx
add esp, 0x714
ret