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

Disassembly:
push 0xffffffffffffffff
push 0x4a57e9
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0xc8
push ebx
push ebp
push esi
mov esi, ecx
xor ebx, ebx
push edi
push ebx
lea ecx, [esp + 0x1c]
call fcn.00475930
mov al, byte [esp + 0x17]
mov dword [esp + 0xe0], ebx
mov byte [esp + 0x28], al
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x30], ebx
mov dword [esp + 0x34], ebx
mov cl, byte [esp + 0x17]
mov dword [esp + 0x6c], ebx
mov byte [esp + 0x68], cl
mov dword [esp + 0x70], ebx
mov dword [esp + 0x74], ebx
lea ecx, [esp + 0x78]
mov byte [esp + 0xe0], 2
call fcn.00476710
lea ecx, [esp + 0x20]
mov byte [esp + 0xe0], 3
call fcn.00475900
mov dl, byte [esp + 0x17]
mov dword [esp + 0x24], ebx
mov byte [esp + 0x58], dl
mov dword [esp + 0x5c], ebx
mov dword [esp + 0x60], ebx
mov dword [esp + 0x64], ebx
mov al, byte [esp + 0x17]
mov dword [esp + 0x4c], ebx
mov byte [esp + 0x48], al
mov dword [esp + 0x50], ebx
mov dword [esp + 0x54], ebx
mov cl, byte [esp + 0x17]
mov dword [esp + 0x3c], ebx
mov byte [esp + 0x38], cl
mov dword [esp + 0x40], ebx
mov dword [esp + 0x44], ebx
push ebx
push ebx
push ebx
mov byte [esp + 0xec], 7
call fcn.0041ca50
mov edx, dword [esp + 0x6c]
add esp, 0xc
mov edi, eax
lea ecx, [esp + 0x58]
push edx
push edi
call fcn.0041bcb0
mov eax, dword [esp + 0x4c]
mov dword [esp + 0x60], edi
push eax
mov eax, dword [esp + 0x54]
push eax
push eax
call fcn.0041ca50
mov ecx, dword [esp + 0x5c]
add esp, 0xc
mov edi, eax
push ecx
push edi
lea ecx, [esp + 0x50]
call fcn.0041bcb0
mov edx, dword [esp + 0x3c]
mov eax, dword [esp + 0x40]
push edx
mov dword [esp + 0x54], edi
push eax
push eax
call fcn.0041ca50
add esp, 0xc
mov edi, eax
mov eax, dword [esp + 0x40]
lea ecx, [esp + 0x38]
push eax
push edi
call fcn.0041bcb0
mov al, byte [0x4c4760]
mov dword [esp + 0x40], edi
cmp al, 1
jne 0x41f343
mov edi, dword [esp + 0xe8]
mov ecx, dword [edi + 4]
mov eax, dword [edi + 8]
push ecx
push eax
push eax
call fcn.0042c100
add esp, 0xc
mov ebp, eax
mov eax, dword [edi + 8]
mov ecx, edi
push eax
push ebp
call fcn.0042ba70
add esi, 8
push ebx
mov ecx, esi
mov dword [edi + 8], ebp
call fcn.00475c70
cmp al, 1
jne 0x41ef80
mov al, byte [0x4c4564]
cmp al, 1
jne 0x41eeca
push 2
push 0x4bc3f4
lea ecx, [esp + 0x18]
call fcn.004759a0
mov ecx, dword [esp + 0x60]
push eax
push 1
push ecx
lea ecx, [esp + 0x64]
mov byte [esp + 0xec], 8
call fcn.0041c400
lea ecx, [esp + 0x10]
mov byte [esp + 0xe0], 7
call fcn.00475a40
push 2
push 0x4bc3f0
lea ecx, [esp + 0x18]
call fcn.004759a0
mov edx, dword [esp + 0x50]
push eax
push 1
push edx
lea ecx, [esp + 0x54]
mov byte [esp + 0xec], 9
call fcn.0041c400
lea ecx, [esp + 0x10]
mov byte [esp + 0xe0], 7
call fcn.00475a40
push 2
push 0x4bc3ec
lea ecx, [esp + 0x18]
call fcn.004759a0
push eax
mov eax, dword [esp + 0x44]
push 1
push eax
lea ecx, [esp + 0x44]
mov byte [esp + 0xec], 0xa
call fcn.0041c400
mov byte [esp + 0xe0], 7
lea ecx, [esp + 0x10]
jmp 0x41f1c7
cmp al, 2
jne 0x41f1cc
push 2
push 0x4bc3e8
lea ecx, [esp + 0x18]
call fcn.004759a0
mov ecx, dword [esp + 0x60]
push eax
push 1
push ecx
lea ecx, [esp + 0x64]
mov byte [esp + 0xec], 0xb
call fcn.0041c400
lea ecx, [esp + 0x10]
mov byte [esp + 0xe0], 7
call fcn.00475a40
push 2
push 0x4bc3e4
lea ecx, [esp + 0x18]
call fcn.004759a0
mov edx, dword [esp + 0x50]
push eax
push 1
push edx
lea ecx, [esp + 0x54]
mov byte [esp + 0xec], 0xc
call fcn.0041c400
lea ecx, [esp + 0x10]
mov byte [esp + 0xe0], 7
call fcn.00475a40
push 2
push 0x4bc3e0
lea ecx, [esp + 0x18]
call fcn.004759a0
push eax
mov eax, dword [esp + 0x44]
push 1
push eax
lea ecx, [esp + 0x44]
mov byte [esp + 0xec], 0xd
call fcn.0041c400
mov byte [esp + 0xe0], 7
lea ecx, [esp + 0x10]
jmp 0x41f1c7
push ebx
mov ecx, esi
call fcn.00475c70
cmp al, 2
jne 0x41f101
mov al, byte [0x4c4564]
cmp al, 1
jne 0x41f04b
push 2
push 0x4bc3dc
lea ecx, [esp + 0x18]
call fcn.004759a0
mov ecx, dword [esp + 0x60]
push eax
push 1
push ecx
lea ecx, [esp + 0x64]
mov byte [esp + 0xec], 0xe
call fcn.0041c400
lea ecx, [esp + 0x10]
mov byte [esp + 0xe0], 7
call fcn.00475a40
push 2
push 0x4bc3d8
lea ecx, [esp + 0x18]
call fcn.004759a0
mov edx, dword [esp + 0x50]
push eax
push 1
push edx
lea ecx, [esp + 0x54]
mov byte [esp + 0xec], 0xf
call fcn.0041c400
lea ecx, [esp + 0x10]
mov byte [esp + 0xe0], 7
call fcn.00475a40
push 2
push 0x4bc3d4
lea ecx, [esp + 0x18]
call fcn.004759a0
push eax
mov eax, dword [esp + 0x44]
push 1
push eax
lea ecx, [esp + 0x44]
mov byte [esp + 0xec], 0x10
call fcn.0041c400
mov byte [esp + 0xe0], 7
lea ecx, [esp + 0x10]
jmp 0x41f1c7
cmp al, 2
jne 0x41f1cc
push 2
push 0x4bc218
lea ecx, [esp + 0x18]
call fcn.004759a0
mov ecx, dword [esp + 0x60]
push eax
push 1
push ecx
lea ecx, [esp + 0x64]
mov byte [esp + 0xec], 0x11
call fcn.0041c400
lea ecx, [esp + 0x10]
mov byte [esp + 0xe0], 7
call fcn.00475a40
push 2
push 0x4bc3d0
lea ecx, [esp + 0x18]
call fcn.004759a0
mov edx, dword [esp + 0x50]
push eax
push 1
push edx
lea ecx, [esp + 0x54]
mov byte [esp + 0xec], 0x12
call fcn.0041c400
lea ecx, [esp + 0x10]
mov byte [esp + 0xe0], 7
call fcn.00475a40
push 2
push 0x4bc3cc
lea ecx, [esp + 0x18]
call fcn.004759a0
push eax
mov eax, dword [esp + 0x44]
push 1
push eax
lea ecx, [esp + 0x44]
mov byte [esp + 0xec], 0x13
call fcn.0041c400
mov byte [esp + 0xe0], 7
lea ecx, [esp + 0x10]
jmp 0x41f1c7
push ebx
mov ecx, esi
call fcn.00475c70
cmp al, 3
jne 0x41f1cc
cmp byte [0x4c4564], 1
jne 0x41f1cc
push 2
push 0x4bc3c8
lea ecx, [esp + 0x18]
call fcn.004759a0
mov ecx, dword [esp + 0x60]
push eax
push 1
push ecx
lea ecx, [esp + 0x64]
mov byte [esp + 0xec], 0x14
call fcn.0041c400
lea ecx, [esp + 0x10]
mov byte [esp + 0xe0], 7
call fcn.00475a40
push 2
push 0x4bc3c4
lea ecx, [esp + 0x18]
call fcn.004759a0
mov edx, dword [esp + 0x50]
push eax
push 1
push edx
lea ecx, [esp + 0x54]
mov byte [esp + 0xec], 0x15
call fcn.0041c400
lea ecx, [esp + 0x10]
mov byte [esp + 0xe0], 7
call fcn.00475a40
push 2
push 0x4bc3c0
lea ecx, [esp + 0x18]
call fcn.004759a0
push eax
mov eax, dword [esp + 0x44]
push 1
push eax
lea ecx, [esp + 0x44]
mov byte [esp + 0xec], 0x16
call fcn.0041c400
mov byte [esp + 0xe0], 7
lea ecx, [esp + 0x10]
call fcn.00475a40
mov eax, dword [edi + 8]
lea ecx, [esp + 0x58]
push ecx
push 1
push eax
mov ecx, edi
call fcn.0042bb50
mov eax, dword [edi + 8]
lea edx, [esp + 0x48]
push edx
push 1
push eax
mov ecx, edi
call fcn.0042bb50
mov eax, dword [edi + 8]
lea ecx, [esp + 0x38]
push ecx
push 1
push eax
mov ecx, edi
call fcn.0042bb50
mov eax, dword [esp + 0x40]
mov esi, dword [esp + 0x3c]
cmp esi, eax
mov byte [esp + 0xe0], 6
mov edi, eax
je 0x41f22b
push ebx
mov ecx, esi
call fcn.0041cb80
add esi, 4
cmp esi, edi
jne 0x41f218
mov esi, dword [esp + 0x3c]
push esi
call fcn.00498130
mov edi, dword [esp + 0x54]
mov esi, dword [esp + 0x50]
add esp, 4
cmp esi, edi
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x40], ebx
mov dword [esp + 0x44], ebx
mov byte [esp + 0xe0], 5
je 0x41f267
push ebx
mov ecx, esi
call fcn.0041cb80
add esi, 4
cmp esi, edi
jne 0x41f254
mov esi, dword [esp + 0x4c]
push esi
call fcn.00498130
mov edi, dword [esp + 0x64]
mov esi, dword [esp + 0x60]
add esp, 4
cmp esi, edi
mov dword [esp + 0x4c], ebx
mov dword [esp + 0x50], ebx
mov dword [esp + 0x54], ebx
mov byte [esp + 0xe0], 4
je 0x41f2a3
push ebx
mov ecx, esi
call fcn.0041cb80
add esi, 4
cmp esi, edi
jne 0x41f290
mov esi, dword [esp + 0x5c]
push esi
call fcn.00498130
add esp, 4
lea ecx, [esp + 0x20]
mov dword [esp + 0x5c], ebx
mov dword [esp + 0x60], ebx
mov dword [esp + 0x64], ebx
mov byte [esp + 0xe0], 3
call fcn.00475a40
lea ecx, [esp + 0x78]
mov byte [esp + 0xe0], 2
call fcn.00476890
mov eax, dword [esp + 0x70]
mov esi, dword [esp + 0x6c]
cmp esi, eax
mov byte [esp + 0xe0], 1
mov edi, eax
je 0x41f303
push ebx
mov ecx, esi
call fcn.0041cb80
add esi, 4
cmp esi, edi
jne 0x41f2f0
mov esi, dword [esp + 0x6c]
push esi
call fcn.00498130
mov edi, dword [esp + 0x34]
mov esi, dword [esp + 0x30]
add esp, 4
cmp esi, edi
mov dword [esp + 0x6c], ebx
mov dword [esp + 0x70], ebx
mov dword [esp + 0x74], ebx
mov byte [esp + 0xe0], bl
je 0x41fe2f
push ebx
mov ecx, esi
call fcn.0041cb80
add esi, 4
cmp esi, edi
jne 0x41f32f
jmp 0x41fe2b
mov edx, dword [esp + 0x70]
mov eax, dword [esp + 0x6c]
push edx
push eax
lea ecx, [esp + 0x70]
call fcn.0041bc60
mov cl, byte [esp + 0x17]
sub esp, 0x10
mov ebp, esp
mov dword [esp + 0x20], esp
push ebx
mov byte [ebp], cl
mov ecx, ebp
call fcn.0041ba60
mov edi, str.T29.DB
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push str.T29.DB
mov ecx, ebp
call fcn.0041c100
mov ecx, dword [0x4c4560]
lea edx, [esp + 0x88]
push edx
call fcn.0042d210
cmp ax, bx
jne 0x41f51a
lea ecx, [esp + 0x78]
call fcn.00476bf0
mov edi, dword [esp + 0x40]
mov esi, dword [esp + 0x3c]
cmp esi, edi
mov byte [esp + 0xe0], 6
je 0x41f3d6
push ebx
mov ecx, esi
call fcn.0041cb80
add esi, 4
cmp esi, edi
jne 0x41f3c3
mov esi, dword [esp + 0x3c]
push esi
call fcn.00498130
mov edi, dword [esp + 0x54]
mov esi, dword [esp + 0x50]
add esp, 4
cmp esi, edi
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x40], ebx
mov dword [esp + 0x44], ebx
mov byte [esp + 0xe0], 5
je 0x41f412
push ebx
mov ecx, esi
call fcn.0041cb80
add esi, 4
cmp esi, edi
jne 0x41f3ff
mov esi, dword [esp + 0x4c]
push esi
call fcn.00498130
mov edi, dword [esp + 0x64]
mov esi, dword [esp + 0x60]
add esp, 4
cmp esi, edi
mov dword [esp + 0x4c], ebx
mov dword [esp + 0x50], ebx
mov dword [esp + 0x54], ebx
mov byte [esp + 0xe0], 4
je 0x41f44e
push ebx
mov ecx, esi
call fcn.0041cb80
add esi, 4
cmp esi, edi
jne 0x41f43b
mov esi, dword [esp + 0x5c]
push esi
call fcn.00498130
add esp, 4
lea ecx, [esp + 0x20]
mov dword [esp + 0x5c], ebx
mov dword [esp + 0x60], ebx
mov dword [esp + 0x64], ebx
mov byte [esp + 0xe0], 3
call fcn.00475a40
lea ecx, [esp + 0x78]
mov byte [esp + 0xe0], 2
call fcn.00476890
mov eax, dword [esp + 0x70]
mov esi, dword [esp + 0x6c]
cmp esi, eax
mov byte [esp + 0xe0], 1
mov edi, eax
je 0x41f4ae
push ebx
mov ecx, esi
call fcn.0041cb80
add esi, 4
cmp esi, edi
jne 0x41f49b
mov esi, dword [esp + 0x6c]
push esi
call fcn.00498130
mov edi, dword [esp + 0x34]
mov esi, dword [esp + 0x30]
add esp, 4
cmp esi, edi
mov dword [esp + 0x6c], ebx
mov dword [esp + 0x70], ebx
mov dword [esp + 0x74], ebx
mov byte [esp + 0xe0], bl
je 0x41f4e9
push ebx
mov ecx, esi
call fcn.0041cb80
add esi, 4
cmp esi, edi
jne 0x41f4d6
mov esi, dword [esp + 0x2c]
push esi
call fcn.00498130
add esp, 4
lea ecx, [esp + 0x18]
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x30], ebx
mov dword [esp + 0x34], ebx
mov dword [esp + 0xe0], 0xffffffff
call fcn.00475a40
xor ax, ax
jmp 0x41fe5c
push 0x41
lea ecx, [esp + 0x1c]
call fcn.00475ce0
mov al, byte [0x4c4564]
lea ecx, [esp + 0x18]
push eax
call fcn.00475ce0
push 0x4c452c
lea ecx, [esp + 0x1c]
call fcn.00475a90
mov cl, byte [0x4c4565]
push ecx
lea ecx, [esp + 0x1c]
call fcn.00475ce0
push ebx
lea ecx, [esp + 0x1c]
call fcn.00475ce0
push ebx
lea ecx, [esp + 0x1c]
call fcn.00475ce0
push ebx
lea ecx, [esp + 0x1c]
call fcn.00475ce0
mov ebp, dword [esp + 0x24]
mov dword [esp + 0x10], 1
mov edx, dword [esp + 0x10]
lea ecx, [esp + 0x18]
push edx
push 5
call fcn.00475c80
xor eax, eax
lea ecx, [esp + 0x18]
mov al, byte [esp + 0x11]
push eax
push 6
call fcn.00475c80
push ecx
lea edx, [esp + 0x1c]
mov ecx, esp
mov dword [esp + 0x28], esp
push edx
call fcn.00475910
lea eax, [esp + 0x2c]
lea ecx, [esp + 0x7c]
push eax
push ecx
mov ecx, dword [0x4c4560]
call fcn.0042d330
cmp ax, bx
je 0x41f93f
push 0xc
lea ecx, [esp + 0x2c]
call fcn.0041b6f0
push ecx
mov ecx, esp
mov dword [esp + 0x28], esp
push eax
call fcn.00475910
lea ecx, [esp + 0x24]
call fcn.00475ae0
push 2
push 0xe
lea ecx, [esp + 0x30]
call fcn.0041b6f0
push ecx
mov ecx, esp
mov dword [esp + 0x2c], esp
push eax
call fcn.00475910
push ecx
lea edx, [esi + 8]
mov ecx, esp
mov dword [esp + 0x28], esp
push edx
mov byte [esp + 0xf0], 0x17
call fcn.00475910
mov ecx, dword [0x4c4560]
mov byte [esp + 0xec], 7
call fcn.0042e230
cmp ax, bx
je 0x41f936
push ebx
lea ecx, [esp + 0x24]
call fcn.00475c70
test al, 1
jne 0x41f936
mov eax, dword [esp + 0x2c]
push 7
lea ecx, [eax + 8]
call fcn.00475c70
xor cx, cx
mov cl, al
push ecx
push 2
lea ecx, [esp + 0x30]
call fcn.0041b6f0
push ecx
mov ecx, esp
mov dword [esp + 0x24], esp
push eax
call fcn.00475910
push ecx
mov byte [esp + 0xec], 0x18
mov ecx, esp
mov dword [esp + 0x30], esp
push 0x4c4520
call fcn.00475910
mov ecx, dword [0x4c4560]
mov byte [esp + 0xec], 7
call fcn.0042e230
cmp ax, bx
je 0x41f936
push ebx
lea ecx, [esp + 0x24]
mov edi, 1
call fcn.00475c70
test al, 2
jne 0x41f722
mov edx, dword [esp + 0x2c]
push 6
lea ecx, [edx + 0xc]
call fcn.00475c70
movzx ax, al
push eax
push 3
lea ecx, [esp + 0x30]
call fcn.0041b6f0
push ecx
mov ecx, esp
mov dword [esp + 0x24], esp
push eax
call fcn.00475910
push ecx
lea edx, [esi + 0x14]
mov ecx, esp
mov dword [esp + 0x30], esp
push edx
mov byte [esp + 0xf0], 0x19
call fcn.00475910
mov ecx, dword [0x4c4560]
mov byte [esp + 0xec], 7
call fcn.0042e230
cmp ax, bx
je 0x41f722
mov edi, 2
push ebx
lea ecx, [esp + 0x24]
call fcn.00475c70
test al, 4
jne 0x41f759
push 4
lea ecx, [esp + 0x2c]
call fcn.0041b6f0
push ecx
mov ecx, esp
mov dword [esp + 0x20], esp
push eax
call fcn.00475910
mov al, byte [esi + 0x18]
mov ecx, esi
push eax
call fcn.0041fe80
cmp ax, bx
je 0x41f759
inc edi
push ebx
lea ecx, [esp + 0x24]
call fcn.00475c70
test al, 8
jne 0x41f790
push 5
lea ecx, [esp + 0x2c]
call fcn.0041b6f0
push ecx
mov ecx, esp
mov dword [esp + 0x20], esp
push eax
call fcn.00475910
mov cl, byte [esi + 0x19]
push ecx
mov ecx, esi
call fcn.0041fe80
cmp ax, bx
je 0x41f790
inc edi
push ebx
lea ecx, [esp + 0x24]
call fcn.00475c70
test al, 0x10
jne 0x41f7ca
push 6
lea ecx, [esp + 0x2c]
call fcn.0041b6f0
push ecx
mov ecx, esp
mov dword [esp + 0x20], esp
push eax
call fcn.00475910
mov dl, byte [0x4c4568]
mov ecx, esi
push edx
call fcn.0041fe80
cmp ax, bx
je 0x41f7ca
inc edi
push ebx
lea ecx, [esp + 0x24]
call fcn.00475c70
test al, 0x20
jne 0x41f803
push 7
lea ecx, [esp + 0x2c]
call fcn.0041b6f0
push ecx
mov ecx, esp
mov dword [esp + 0x20], esp
push eax
call fcn.00475910
mov al, byte [0x4c4569]
mov ecx, esi
push eax
call fcn.0041fe80
cmp ax, bx
je 0x41f803
inc edi
push ebx
lea ecx, [esp + 0x24]
call fcn.00475c70
test al, 0x40
jne 0x41f83a
push 8
lea ecx, [esp + 0x2c]
call fcn.0041b6f0
push ecx
mov ecx, esp
mov dword [esp + 0x20], esp
push eax
call fcn.00475910
mov cl, byte [esi + 0x1a]
push ecx
mov ecx, esi
call fcn.0041fe80
cmp ax, bx
je 0x41f83a
inc edi
push ebx
lea ecx, [esp + 0x24]
call fcn.00475c70
test al, 0x80
jne 0x41f871
push 9
lea ecx, [esp + 0x2c]
call fcn.0041b6f0
push ecx
mov ecx, esp
mov dword [esp + 0x20], esp
push eax
call fcn.00475910
mov dl, byte [esi + 0x1b]
mov ecx, esi
push edx
call fcn.0041fe80
cmp ax, bx
je 0x41f871
inc edi
push 1
lea ecx, [esp + 0x24]
call fcn.00475c70
test al, 1
jne 0x41f8a9
push 0xa
lea ecx, [esp + 0x2c]
call fcn.0041b6f0
push ecx
mov ecx, esp
mov dword [esp + 0x20], esp
push eax
call fcn.00475910
mov al, byte [esi + 0x1c]
mov ecx, esi
push eax
call fcn.0041fe80
cmp ax, bx
je 0x41f8a9
inc edi
push 1
lea ecx, [esp + 0x24]
call fcn.00475c70
test al, 2
jne 0x41f8e1
push 0xb
lea ecx, [esp + 0x2c]
call fcn.0041b6f0
push ecx
mov ecx, esp
mov dword [esp + 0x20], esp
push eax
call fcn.00475910
mov cl, byte [esi + 0x1d]
push ecx
mov ecx, esi
call fcn.0041fe80
cmp ax, bx
je 0x41f8e1
inc edi
cmp di, bx
jle 0x41f936
cmp di, bp
jle 0x41f91f
mov edx, dword [esp + 0x6c]
mov eax, dword [esp + 0x70]
push edx
push eax
push eax
mov ebp, edi
call fcn.0041ca50
add esp, 0xc
mov edi, eax
mov eax, dword [esp + 0x70]
lea ecx, [esp + 0x68]
push eax
push edi
call fcn.0041bcb0
lea ecx, [esp + 0x18]
mov dword [esp + 0x70], edi
push ecx
push 1
push edi
jmp 0x41f92d
jne 0x41f936
mov eax, dword [esp + 0x70]
lea edx, [esp + 0x18]
push edx
push 1
push eax
lea ecx, [esp + 0x74]
call fcn.0041c400
inc dword [esp + 0x10]
jmp 0x41f57c
mov ecx, dword [esp + 0x6c]
cmp ecx, ebx
je 0x41f95b
mov eax, dword [esp + 0x70]
mov edx, eax
sub edx, ecx
test edx, 0xfffffffc
jne 0x41facf
lea ecx, [esp + 0x78]
call fcn.00476bf0
mov edi, dword [esp + 0x40]
mov esi, dword [esp + 0x3c]
cmp esi, edi
mov byte [esp + 0xe0], 6
je 0x41f98b
push ebx
mov ecx, esi
call fcn.0041cb80
add esi, 4
cmp esi, edi
jne 0x41f978
mov esi, dword [esp + 0x3c]
push esi
call fcn.00498130
mov edi, dword [esp + 0x54]
mov esi, dword [esp + 0x50]
add esp, 4
cmp esi, edi
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x40], ebx
mov dword [esp + 0x44], ebx
mov byte [esp + 0xe0], 5
je 0x41f9c7
push ebx
mov ecx, esi
call fcn.0041cb80
add esi, 4
cmp esi, edi
jne 0x41f9b4
mov esi, dword [esp + 0x4c]
push esi
call fcn.00498130
mov edi, dword [esp + 0x64]
mov esi, dword [esp + 0x60]
add esp, 4
cmp esi, edi
mov dword [esp + 0x4c], ebx
mov dword [esp + 0x50], ebx
mov dword [esp + 0x54], ebx
mov byte [esp + 0xe0], 4
je 0x41fa03
push ebx
mov ecx, esi
call fcn.0041cb80
add esi, 4
cmp esi, edi
jne 0x41f9f0
mov esi, dword [esp + 0x5c]
push esi
call fcn.00498130
add esp, 4
lea ecx, [esp + 0x20]
mov dword [esp + 0x5c], ebx
mov dword [esp + 0x60], ebx
mov dword [esp + 0x64], ebx
mov byte [esp + 0xe0], 3
call fcn.00475a40
lea ecx, [esp + 0x78]
mov byte [esp + 0xe0], 2
call fcn.00476890
mov eax, dword [esp + 0x70]
mov esi, dword [esp + 0x6c]
cmp esi, eax
mov byte [esp + 0xe0], 1
mov edi, eax
je 0x41fa63
push ebx
mov ecx, esi
call fcn.0041cb80
add esi, 4
cmp esi, edi
jne 0x41fa50
mov esi, dword [esp + 0x6c]
push esi
call fcn.00498130
mov edi, dword [esp + 0x34]
mov esi, dword [esp + 0x30]
add esp, 4
cmp esi, edi
mov dword [esp + 0x6c], ebx
mov dword [esp + 0x70], ebx
mov dword [esp + 0x74], ebx
mov byte [esp + 0xe0], bl
je 0x41fa9e
push ebx
mov ecx, esi
call fcn.0041cb80
add esi, 4
cmp esi, edi
jne 0x41fa8b
mov esi, dword [esp + 0x2c]
push esi
call fcn.00498130
add esp, 4
lea ecx, [esp + 0x18]
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x30], ebx
mov dword [esp + 0x34], ebx
mov dword [esp + 0xe0], 0xffffffff
call fcn.00475a40
xor ax, ax
jmp 0x41fe5c
xor esi, esi
cmp ecx, ebx
jne 0x41fad9
xor ecx, ecx
jmp 0x41fae0
sub eax, ecx
sar eax, 2
mov ecx, eax
movsx eax, si
cmp eax, ecx
jae 0x41fc68
push eax
lea ecx, [esp + 0x6c]
call fcn.0041b6f0
push ecx
mov ecx, esp
mov dword [esp + 0x20], esp
push eax
call fcn.00475910
lea ecx, [esp + 0x1c]
call fcn.00475ae0
push ecx
lea eax, [esp + 0x1c]
mov ecx, esp
mov dword [esp + 0x20], esp
push eax
call fcn.00475910
lea ecx, [esp + 0x2c]
lea edx, [esp + 0x7c]
push ecx
mov ecx, dword [0x4c4560]
push edx
call fcn.0042d330
push 0xf
lea ecx, [esp + 0x2c]
call fcn.0041b6f0
push ecx
mov ecx, esp
mov dword [esp + 0x20], esp
push eax
call fcn.00475910
sub esp, 0x10
lea eax, [esp + 0x6c]
mov ecx, esp
mov dword [esp + 0x38], esp
push eax
mov byte [esp + 0xf8], 0x1a
call fcn.0041b450
mov ecx, dword [0x4c4560]
mov byte [esp + 0xf4], 7
call fcn.0042d570
cmp ax, bx
jne 0x41fb94
mov ecx, dword [esp + 0x2c]
mov edx, dword [esp + 0x60]
add ecx, 0x3c
push ecx
push 1
push edx
lea ecx, [esp + 0x64]
call fcn.0041c400
push 0x10
lea ecx, [esp + 0x2c]
call fcn.0041b6f0
push ecx
mov ecx, esp
mov dword [esp + 0x20], esp
push eax
call fcn.00475910
sub esp, 0x10
lea eax, [esp + 0x5c]
mov ecx, esp
mov dword [esp + 0x38], esp
push eax
mov byte [esp + 0xf8], 0x1b
call fcn.0041b450
mov ecx, dword [0x4c4560]
mov byte [esp + 0xf4], 7
call fcn.0042d570
cmp ax, bx
jne 0x41fbf7
mov ecx, dword [esp + 0x2c]
mov edx, dword [esp + 0x50]
add ecx, 0x40
push ecx
push 1
push edx
lea ecx, [esp + 0x54]
call fcn.0041c400
push 0x11
lea ecx, [esp + 0x2c]
call fcn.0041b6f0
push ecx
mov ecx, esp
mov dword [esp + 0x20], esp
push eax
call fcn.00475910
sub esp, 0x10
lea eax, [esp + 0x4c]
mov ecx, esp
mov dword [esp + 0x38], esp
push eax
mov byte [esp + 0xf8], 0x1c
call fcn.0041b450
mov ecx, dword [0x4c4560]
mov byte [esp + 0xf4], 7
call fcn.0042d570
cmp ax, bx
jne 0x41fc5a
mov ecx, dword [esp + 0x2c]
mov edx, dword [esp + 0x40]
add ecx, 0x44
push ecx
push 1
push edx
lea ecx, [esp + 0x44]
call fcn.0041c400
mov ecx, dword [esp + 0x6c]
mov eax, dword [esp + 0x70]
inc esi
jmp 0x41fad1
mov esi, dword [esp + 0xe8]
mov ebp, dword [esi + 8]
mov edi, dword [esi + 4]
cmp ebp, ebp
mov dword [esp + 0x24], ebp
je 0x41fc93
push ebp
mov ecx, edi
call fcn.0041b500
mov eax, dword [esp + 0x24]
add ebp, 0x10
add edi, 0x10
cmp ebp, eax
jne 0x41fc7d
mov eax, dword [esi + 8]
mov ebp, edi
cmp edi, eax
mov dword [esp + 0x24], eax
je 0x41fcb3
push ebx
mov ecx, ebp
call fcn.0042cc40
mov eax, dword [esp + 0x24]
add ebp, 0x10
cmp ebp, eax
jne 0x41fca0
lea eax, [esp + 0x58]
mov ecx, esi
push eax
push 1
push edi
mov dword [esi + 8], edi
call fcn.0042bb50
mov eax, dword [esi + 8]
lea ecx, [esp + 0x48]
push ecx
push 1
push eax
mov ecx, esi
call fcn.0042bb50
mov eax, dword [esi + 8]
lea edx, [esp + 0x38]
push edx
push 1
push eax
mov ecx, esi
call fcn.0042bb50
lea ecx, [esp + 0x78]
call fcn.00476bf0
mov eax, dword [esp + 0x40]
mov esi, dword [esp + 0x3c]
cmp esi, eax
mov byte [esp + 0xe0], 6
mov edi, eax
je 0x41fd1a
mov ecx, esi
call fcn.00475a40
add esi, 4
cmp esi, edi
jne 0x41fd08
mov esi, dword [esp + 0x3c]
push esi
call fcn.00498130
mov eax, dword [esp + 0x54]
mov esi, dword [esp + 0x50]
add esp, 4
cmp esi, eax
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x40], ebx
mov dword [esp + 0x44], ebx
mov byte [esp + 0xe0], 5
mov edi, eax
je 0x41fd57
mov ecx, esi
call fcn.00475a40
add esi, 4
cmp esi, edi
jne 0x41fd45
mov esi, dword [esp + 0x4c]
push esi
call fcn.00498130
mov eax, dword [esp + 0x64]
mov esi, dword [esp + 0x60]
add esp, 4
cmp esi, eax
mov dword [esp + 0x4c], ebx
mov dword [esp + 0x50], ebx
mov dword [esp + 0x54], ebx
mov byte [esp + 0xe0], 4
mov edi, eax
je 0x41fd94
mov ecx, esi
call fcn.00475a40
add esi, 4
cmp esi, edi
jne 0x41fd82
mov esi, dword [esp + 0x5c]
push esi
call fcn.00498130
add esp, 4
lea ecx, [esp + 0x20]
mov dword [esp + 0x5c], ebx
mov dword [esp + 0x60], ebx
mov dword [esp + 0x64], ebx
mov byte [esp + 0xe0], 3
call fcn.00475a40
lea ecx, [esp + 0x78]
mov byte [esp + 0xe0], 2
call fcn.00476890
mov eax, dword [esp + 0x70]
mov esi, dword [esp + 0x6c]
cmp esi, eax
mov byte [esp + 0xe0], 1
mov edi, eax
je 0x41fdf3
mov ecx, esi
call fcn.00475a40
add esi, 4
cmp esi, edi
jne 0x41fde1
mov esi, dword [esp + 0x6c]
push esi
call fcn.00498130
mov eax, dword [esp + 0x34]
mov esi, dword [esp + 0x30]
add esp, 4
cmp esi, eax
mov dword [esp + 0x6c], ebx
mov dword [esp + 0x70], ebx
mov dword [esp + 0x74], ebx
mov byte [esp + 0xe0], bl
mov edi, eax
je 0x41fe2f
mov ecx, esi
call fcn.00475a40
add esi, 4
cmp esi, edi
jne 0x41fe1d
mov esi, dword [esp + 0x2c]
push esi
call fcn.00498130
add esp, 4
lea ecx, [esp + 0x18]
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x30], ebx
mov dword [esp + 0x34], ebx
mov dword [esp + 0xe0], 0xffffffff
call fcn.00475a40
mov ax, 1
mov ecx, dword [esp + 0xd8]
pop edi
pop esi
pop ebp
mov dword fs:[0], ecx
pop ebx
add esp, 0xd4
ret 4