Function at 0x41e546
Capabilities:
Inspect section memory permissions

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x70
mov eax, dword [ebp + 0x10]
mov dword [ebp - 4], eax
mov dword [ebp - 0x10], 0
mov ecx, dword [ebp + 0x10]
mov dword [ebp - 8], ecx
mov edx, dword [ebp - 8]
and edx, 0xffff
mov word [ebp - 0xc], dx
cmp dword [ebp + 8], 0
je 0x41e57a
mov eax, dword [ebp + 8]
cmp dword [eax], 0x66
je 0x41e584
mov eax, 0xffffffcd
jmp 0x42040b
push 0x1c
mov ecx, dword [ebp + 8]
push ecx
call fcn.00448e40
add esp, 8
cmp eax, 0x336
je 0x41e5f4
mov edx, dword [ebp + 8]
cmp dword [edx + 0x80], 0
je 0x41e5b9
xor eax, eax
test eax, eax
je 0x41e5b9
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x80]
mov dword [ebp - 0x3c], edx
jmp 0x41e5c0
mov dword [ebp - 0x3c], 0xffffffd3
mov eax, dword [ebp + 8]
mov ecx, dword [ebp - 0x3c]
mov dword [eax + 0x80], ecx
push 0
push 0xff
push 0
push 0
push 0xcc
push 0xffffffffffffffd3
mov edx, dword [ebp + 8]
push edx
call fcn.00417d90
add esp, 0x1c
mov eax, 0xffffffd3
jmp 0x42040b
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], 0x6e
jg 0x41e627
cmp dword [ebp - 0x40], 0x6e
je 0x41ef79
mov ecx, dword [ebp - 0x40]
sub ecx, 2
mov dword [ebp - 0x40], ecx
cmp dword [ebp - 0x40], 0x68
ja case.0x41e6f3.2
mov edx, dword [ebp - 0x40]
jmp dword [edx*4 + 0x42040f]
cmp dword [ebp - 0x40], 0x1fe
jg 0x41e6da
cmp dword [ebp - 0x40], 0x1fe
je 0x41ffc6
cmp dword [ebp - 0x40], 0x1f7
jg 0x41e6bb
cmp dword [ebp - 0x40], 0x1f7
je 0x4200e3
cmp dword [ebp - 0x40], 0xc8
jg 0x41e68f
cmp dword [ebp - 0x40], 0xc8
je 0x41f623
cmp dword [ebp - 0x40], 0x73
je 0x41f353
cmp dword [ebp - 0x40], 0x78
je 0x41fac7
cmp dword [ebp - 0x40], 0x82
je 0x41e6fa
jmp case.0x41e6f3.2
cmp dword [ebp - 0x40], 0x1f4
je 0x42008c
cmp dword [ebp - 0x40], 0x1f5
je 0x4200a9
cmp dword [ebp - 0x40], 0x1f6
je 0x4200c6
jmp case.0x41e6f3.2
mov eax, dword [ebp - 0x40]
sub eax, 0x1f8
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], 5
ja case.0x41e6f3.2
mov ecx, dword [ebp - 0x40]
jmp dword [ecx*4 + 0x4205b3]
mov edx, dword [ebp - 0x40]
sub edx, 0x1ff
mov dword [ebp - 0x40], edx
cmp dword [ebp - 0x40], 0x10
ja case.0x41e6f3.2
mov eax, dword [ebp - 0x40]
jmp dword [eax*4 + 0x4205cb]
movsx ecx, word [ebp - 0xc]
test ecx, ecx
je 0x41e728
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x19c]
mov ecx, dword [eax + 0x1ce4]
or ecx, 0x40000000
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x19c]
mov dword [eax + 0x1ce4], ecx
jmp 0x41e74b
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x19c]
mov eax, dword [edx + 0x1ce4]
and eax, 0xbfffffff
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x19c]
mov dword [edx + 0x1ce4], eax
jmp 0x420408
mov dword [ebp - 0x14], 0
mov eax, dword [ebp - 4]
push eax
mov ecx, dword [ebp + 8]
push ecx
call fcn.00444d43
add esp, 8
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0
je 0x41e7ab
lea edx, [ebp - 0x18]
push edx
call fcn.0050cc55
add esp, 4
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x18]
cmp eax, dword [ebp - 0x14]
jge 0x41e7a9
push 0
call fcn.0050cc55
add esp, 4
mov ecx, dword [ebp - 0x14]
sub ecx, eax
mov eax, ecx
cdq
mov ecx, 0x3c
idiv ecx
mov edx, dword [ebp + 8]
mov dword [edx + 0x190], eax
jmp 0x41e81d
mov eax, dword [ebp + 8]
cmp dword [eax + 0x80], 0
je 0x41e7cb
xor ecx, ecx
test ecx, ecx
je 0x41e7cb
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x80]
mov dword [ebp - 0x44], eax
jmp 0x41e7d2
mov dword [ebp - 0x44], 0xffffffd6
mov ecx, dword [ebp + 8]
mov edx, dword [ebp - 0x44]
mov dword [ecx + 0x80], edx
cmp dword [ebp - 4], 0
je 0x41e7ec
mov eax, dword [ebp - 4]
mov dword [ebp - 0x48], eax
jmp 0x41e7f3
mov dword [ebp - 0x48], str.BORROW_EXPIRE_null
push 0
push 0xff
mov ecx, dword [ebp - 0x48]
push ecx
push 0
push 0x239
push 0xffffffffffffffd6
mov edx, dword [ebp + 8]
push edx
call fcn.00417d90
add esp, 0x1c
mov eax, 0xffffffd6
jmp 0x42040b
jmp 0x420408
movsx eax, word [ebp - 0xc]
test eax, eax
je 0x41e885
mov ecx, dword [ebp + 8]
cmp dword [ecx + 0x80], 0
je 0x41e84a
xor edx, edx
test edx, edx
je 0x41e84a
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x80]
mov dword [ebp - 0x4c], ecx
jmp 0x41e851
mov dword [ebp - 0x4c], 0xffffffd3
mov edx, dword [ebp + 8]
mov eax, dword [ebp - 0x4c]
mov dword [edx + 0x80], eax
push 0
push 0xff
push 0
push 0
push 0x238
push 0xffffffffffffffd3
mov ecx, dword [ebp + 8]
push ecx
call fcn.00417d90
add esp, 0x1c
mov eax, 0xffffffd3
jmp 0x42040b
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0xd4]
mov ecx, dword [eax + 0x10a4]
and ecx, 0xfffbffff
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0xd4]
mov dword [eax + 0x10a4], ecx
jmp 0x420408
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x19c]
mov eax, dword [edx + 0x1cdc]
mov ecx, dword [ebp - 4]
mov dword [eax + 0x564], ecx
jmp 0x420408
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0xd4]
mov cx, word [ebp - 0xc]
mov word [eax + 0x10a0], cx
jmp 0x420408
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0xd4]
mov ecx, dword [ebp + 0x10]
mov dword [eax + 0x1088], ecx
jmp 0x420408
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0xd4]
mov ecx, dword [ebp + 0x10]
mov dword [eax + 0x3c], ecx
jmp 0x420408
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0xd4]
mov ecx, dword [ebp + 0x10]
mov dword [eax + 0x40], ecx
jmp 0x420408
movsx edx, word [ebp - 0xc]
test edx, edx
je 0x41e94e
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0xd4]
mov edx, dword [ecx + 0x10a4]
movsb byte es:[edi], byte [esi]
adc byte [eax], al
add byte [ebx + 0x458b40ca], al
or byte [ebx + 0xd488], cl
add byte [ecx + 0x10a491], cl
add bl, ch
invalid
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0xd4]
cmp dword [ebp + 0x10], 0
jl 0x41e9ad
cmp dword [ebp + 0x10], 0x1e
jge 0x41e9ad
push 0x52ba3c
mov ecx, dword [ebp + 8]
push ecx
call fcn.00433dee
add esp, 8
test eax, eax
jne 0x41e9ad
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0xd4]
cmp dword [eax + 0x14], 0x162e
jne 0x41ea26
cmp dword [ebp + 0x10], 0
jle 0x41ea26
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0xd4]
mov eax, dword [ebp + 0x10]
mov dword [edx + 0xc], eax
mov ecx, dword [ebp + 8]
cmp dword [ecx + 0x124], 0
je 0x41ea11
mov edx, dword [ebp + 0x10]
mov dword [ebp - 0x1c], edx
cmp dword [ebp + 0x10], 0
jge 0x41e9db
mov dword [ebp - 0x1c], 0
mov eax, dword [ebp + 0x10]
imul eax, eax, 0x3e8
push eax
push 1
push 0x44ba57
mov ecx, dword [ebp - 0x1c]
imul ecx, ecx, 0x3e8
push ecx
push 0xfffffb2e
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x124]
push eax
mov ecx, dword [ebp + 8]
push ecx
call fcn.0045dd15
add esp, 0x1c
cmp dword [ebp + 0x10], 0
jg 0x41ea24
mov edx, dword [ebp + 8]
mov dword [edx + 0x124], 0
jmp 0x41ea83
mov eax, dword [ebp + 8]
cmp dword [eax + 0x80], 0
je 0x41ea46
xor ecx, ecx
test ecx, ecx
cmp dword [ebp - 4], 0
jne 0x41ea95
mov dword [ebp - 4], 0x5447fc
push 0x400
mov eax, dword [ebp - 4]
push eax
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0xd4]
add edx, 0xc54
push edx
call fcn.0050d040
add esp, 0xc
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0xd4]
mov byte [ecx + 0x1054], 0
jmp 0x420408
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0xd4]
movsx ecx, word [ebp - 0xc]
mov dword [eax + 0x108c], ecx
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0xd4]
mov dword [eax + 0x1094], 2
jmp 0x420408
push 4
mov ecx, dword [ebp + 0x10]
push ecx
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x19c]
mov ecx, dword [eax + 0x1cdc]
add ecx, 0x7fc
push ecx
call fcn.0042a687
add esp, 0xc
push str.07.1
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x19c]
mov ecx, dword [eax + 0x1cdc]
add ecx, 0x7fc
push ecx
call fcn.0050c590
add esp, 8
test eax, eax
jge 0x41eb61
push 1
push 0x5b
mov edx, dword [ebp + 8]
push edx
call fcn.0041e546
add esp, 0xc
push 0
push 0x57
mov eax, dword [ebp + 8]
push eax
call fcn.0041e546
add esp, 0xc
push 0x52ba58
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x19c]
mov eax, dword [edx + 0x1cdc]
add eax, 0x7fc
push eax
call fcn.0050c590
add esp, 8
test eax, eax
jge 0x41ec2f
push 0x4000
mov ecx, dword [ebp + 8]
push ecx
call fcn.0041b5e0
add esp, 8
push 0x2000
mov edx, dword [ebp + 8]
push edx
call fcn.0041b5e0
add esp, 8
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0xd4]
mov edx, dword [ecx + 0x10a4]
and edx, 0xffffffef
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0xd4]
mov dword [ecx + 0x10a4], edx
push 0x400
mov edx, dword [ebp + 8]
push edx
call fcn.0041b5e0
add esp, 8
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x19c]
mov edx, dword [ecx + 0x1cdc]
mov dword [edx + 0x7f8], 0x289beb8a
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0xd4]
mov edx, dword [ecx + 0x10a4]
and dh, 0xfb
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0xd4]
mov dword [ecx + 0x10a4], edx
push 0x800
mov edx, dword [ebp + 8]
push edx
call fcn.0041b5e0
add esp, 8
jmp 0x41ecce
push 0x4000
mov eax, dword [ebp + 8]
push eax
call fcn.0041b657
add esp, 8
push 0x2000
mov ecx, dword [ebp + 8]
push ecx
call fcn.0041b657
add esp, 8
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0xd4]
mov ecx, dword [eax + 0x10a4]
or ecx, 0x10
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0xd4]
mov dword [eax + 0x10a4], ecx
push 0x400
mov ecx, dword [ebp + 8]
push ecx
call fcn.0041b657
add esp, 8
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x19c]
mov ecx, dword [eax + 0x1cdc]
mov dword [ecx + 0x7f8], 0x66d8b337
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0xd4]
mov ecx, dword [eax + 0x10a4]
or ch, 4
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0xd4]
mov dword [eax + 0x10a4], ecx
push 0x800
mov ecx, dword [ebp + 8]
push ecx
call fcn.0041b657
add esp, 8
push 0x52ba60
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x19c]
mov ecx, dword [eax + 0x1cdc]
add ecx, 0x7fc
push ecx
call fcn.0050c590
add esp, 8
test eax, eax
jge 0x41ed1b
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0xd4]
mov ecx, dword [eax + 0x10a4]
and ecx, 0xfffeffff
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0xd4]
mov dword [eax + 0x10a4], ecx
jmp 0x41ed3e
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0xd4]
mov eax, dword [edx + 0x10a4]
or eax, 0x10000
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0xd4]
mov dword [edx + 0x10a4], eax
jmp 0x420408
cmp dword [ebp + 0x10], 0
je 0x41ed6f
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0xd4]
mov edx, dword [ecx + 0x10a4]
or edx, 0x10000
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0xd4]
mov dword [ecx + 0x10a4], edx
jmp 0x41ed93
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0xd4]
mov ecx, dword [eax + 0x10a4]
and ecx, 0xfffeffff
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0xd4]
mov dword [eax + 0x10a4], ecx
jmp 0x420408
cmp dword [ebp + 0x10], 0
jl 0x41edaf
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0xd4]
mov eax, dword [ebp + 0x10]
mov dword [edx + 0x1c], eax
jmp 0x41ee0c
mov ecx, dword [ebp + 8]
cmp dword [ecx + 0x80], 0
je 0x41edcf
xor edx, edx
test edx, edx
je 0x41edcf
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x80]
mov dword [ebp - 0x54], ecx
jmp 0x41edd6
mov dword [ebp - 0x54], 0xffffffd6
mov edx, dword [ebp + 8]
mov eax, dword [ebp - 0x54]
mov dword [edx + 0x80], eax
push 0
push 0xff
push 0
push 0
push 0xce
push 0xffffffffffffffd6
mov ecx, dword [ebp + 8]
push ecx
call fcn.00417d90
add esp, 0x1c
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x80]
mov dword [ebp - 0x10], eax
jmp 0x420408
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x19c]
mov eax, dword [edx + 0x1cdc]
mov cx, word [ebp - 0xc]
mov word [eax + 0x570], cx
jmp 0x420408
movsx edx, word [ebp - 0xc]
test edx, edx
je 0x41ee5b
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0xd4]
mov edx, dword [ecx + 0x10a4]
or edx, 4
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0xd4]
mov dword [ecx + 0x10a4], edx
jmp 0x41ee7c
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0xd4]
mov ecx, dword [eax + 0x10a4]
and ecx, 0xfffffffb
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0xd4]
mov dword [eax + 0x10a4], ecx
jmp 0x420408
cmp dword [ebp - 4], 0
jne 0x41ee8e
mov dword [ebp - 4], 0x544800
push 0x400
mov ecx, dword [ebp - 4]
push ecx
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0xd4]
add eax, 0x846
push eax
call fcn.0050d040
add esp, 0xc
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0xd4]
mov byte [edx + 0xc46], 0
jmp 0x420408
mov dword [ebp - 0x20], 0
cmp dword [0x52ba04], 0xffffffff
jne 0x41eee9
push 0x52ba68
mov eax, dword [ebp + 8]
push eax
call fcn.00433dee
add esp, 8
mov dword [0x52ba04], eax
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0xd4]
movsx eax, word [edx + 2]
movsx ecx, word [ebp - 0xc]
cmp eax, ecx
je 0x41ef1d
mov edx, dword [ebp + 8]
cmp dword [edx + 0xdc], 0
je 0x41ef1d
mov eax, dword [ebp + 8]
cmp dword [eax + 0xe4], 0
je 0x41ef1d
mov dword [ebp - 0x20], 1
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0xd4]
mov ax, word [ebp - 0xc]
mov word [edx + 2], ax
cmp dword [0x52ba04], 0
je 0x41ef4b
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0xd4]
mov ax, word [ebp - 0xc]
mov word [edx + 0x109a], ax
cmp dword [ebp - 0x20], 0
je 0x41ef5d
mov ecx, dword [ebp + 8]
push ecx
call fcn.00412670
add esp, 4
jmp 0x420408
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0xd4]
mov ecx, dword [ebp + 0x10]
mov dword [eax + 0x106c], ecx
jmp 0x420408
cmp dword [ebp + 0x10], 0
je 0x41efa5
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0xd4]
mov ecx, dword [eax + 0x10a4]
or ecx, 0x20000000
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0xd4]
mov dword [eax + 0x10a4], ecx
jmp 0x41efc8
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0xd4]
mov eax, dword [edx + 0x10a4]
and eax, 0xdfffffff
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0xd4]
mov dword [edx + 0x10a4], eax
jmp 0x420408
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x19c]
mov edx, dword [ecx + 0x1cdc]
mov eax, dword [ebp + 0x10]
mov dword [edx + 0x808], eax
jmp 0x420408
cmp dword [ebp - 4], 0
jne 0x41eff7
mov dword [ebp - 4], 0x544804
push 0x400
mov ecx, dword [ebp - 4]
push ecx
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0xd4]
add eax, 0x445
push eax
call fcn.0050d040
add esp, 0xc
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0xd4]
mov byte [edx + 0x845], 0
jmp 0x420408
movsx eax, word [ebp - 0xc]
test eax, eax
je 0x41f057
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0xd4]
mov eax, dword [edx + 0x10a4]
or ah, 0x40
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0xd4]
mov dword [edx + 0x10a4], eax
jmp 0x41f078
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0xd4]
mov edx, dword [ecx + 0x10a4]
and dh, 0xbf
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0xd4]
mov dword [ecx + 0x10a4], edx
jmp 0x420408
cmp dword [ebp + 0x10], 0
je 0x41f0b9
push 1
mov edx, dword [ebp + 8]
push edx
call fcn.0041b657
add esp, 8
push 4
mov eax, dword [ebp + 8]
push eax
call fcn.0041b5e0
add esp, 8
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x19c]
mov eax, dword [edx + 0x1cdc]
mov ecx, dword [ebp + 0x10]
mov dword [eax + 0x55c], ecx
jmp 0x41f0ee
push 1
mov edx, dword [ebp + 8]
push edx
call fcn.0041b5e0
add esp, 8
push 4
mov eax, dword [ebp + 8]
push eax
call fcn.0041b657
add esp, 8
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x19c]
mov eax, dword [edx + 0x1cdc]
mov dword [eax + 0x55c], 0
jmp 0x420408
movsx ecx, word [ebp - 0xc]
test ecx, ecx
je 0x41f16d
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0xd4]
mov ecx, dword [eax + 0x10a4]
or ecx, 0x200000
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0xd4]
mov dword [eax + 0x10a4], ecx
push 0x2000
mov ecx, dword [ebp + 8]
push ecx
call fcn.0041b5e0
add esp, 8
push 0x400
mov edx, dword [ebp + 8]
push edx
call fcn.0041b5e0
add esp, 8
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x19c]
mov edx, dword [ecx + 0x1cdc]
mov dword [edx + 0x7f8], 0x289beb8a
push 0x800
mov eax, dword [ebp + 8]
push eax
call fcn.0041b5e0
add esp, 8
jmp 0x41f1dc
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0xd4]
mov eax, dword [edx + 0x10a4]
and eax, 0xffdfffff
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0xd4]
mov dword [edx + 0x10a4], eax
push 0x2000
mov eax, dword [ebp + 8]
push eax
call fcn.0041b657
add esp, 8
push 0x400
mov ecx, dword [ebp + 8]
push ecx
call fcn.0041b657
add esp, 8
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x19c]
mov ecx, dword [eax + 0x1cdc]
mov dword [ecx + 0x7f8], 0x66d8b337
push 0x800
mov edx, dword [ebp + 8]
push edx
call fcn.0041b657
add esp, 8
jmp 0x420408
push 4
mov eax, dword [ebp + 0x10]
push eax
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x19c]
mov eax, dword [edx + 0x1cdc]
add eax, 0x801
push eax
call fcn.0042a687
add esp, 0xc
push 0x52ba7c
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x19c]
mov eax, dword [edx + 0x1cdc]
add eax, 0x801
push eax
call fcn.0050c590
add esp, 8
test eax, eax
jge 0x41f289
push 0x4000
mov ecx, dword [ebp + 8]
push ecx
call fcn.0041b5e0
add esp, 8
push 0x2000
mov edx, dword [ebp + 8]
push edx
call fcn.0041b5e0
add esp, 8
push 0x400
mov eax, dword [ebp + 8]
push eax
call fcn.0041b5e0
add esp, 8
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x19c]
mov eax, dword [edx + 0x1cdc]
mov dword [eax + 0x7f8], 0x289beb8a
push 0x800
mov ecx, dword [ebp + 8]
push ecx
call fcn.0041b5e0
add esp, 8
jmp 0x41f2e6
push 0x4000
mov edx, dword [ebp + 8]
push edx
call fcn.0041b657
add esp, 8
push 0x2000
mov eax, dword [ebp + 8]
push eax
call fcn.0041b657
add esp, 8
push 0x400
mov ecx, dword [ebp + 8]
push ecx
call fcn.0041b657
add esp, 8
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x19c]
mov ecx, dword [eax + 0x1cdc]
mov dword [ecx + 0x7f8], 0x66d8b337
push 0x800
mov edx, dword [ebp + 8]
push edx
call fcn.0041b657
add esp, 8
jmp 0x420408
mov dword [ebp - 0x24], 0
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x138]
and ecx, 0x10
test ecx, ecx
jne 0x41f322
mov edx, dword [ebp + 8]
push edx
call fcn.0044b956
add esp, 4
test eax, eax
jne 0x41f347
mov eax, dword [ebp + 8]
push eax
call fcn.0044b9a2
add esp, 4
test eax, eax
jne 0x41f347
mov ecx, dword [ebp + 0xc]
push ecx
mov edx, dword [ebp - 4]
push edx
mov eax, dword [ebp + 8]
push eax
call fcn.0042060f
add esp, 0xc
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0
je 0x41f345
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x10], ecx
jmp 0x41f34e
mov dword [ebp - 0x10], 0xffffff5a
jmp 0x420408
movsx edx, word [ebp - 0xc]
test edx, edx
je 0x41f36b
push 0x40
mov eax, dword [ebp + 8]
push eax
call fcn.0041b5e0
add esp, 8
jmp 0x41f379
push 0x40
mov ecx, dword [ebp + 8]
push ecx
call fcn.0041b657
add esp, 8
jmp 0x420408
movsx edx, word [ebp - 0xc]
test edx, edx
je 0x41f3b2
push 0x400
mov eax, dword [ebp + 8]
push eax
call fcn.0041b5e0
add esp, 8
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x19c]
mov eax, dword [edx + 0x1cdc]
mov dword [eax + 0x7f8], 0x289beb8a
jmp 0x41f3dc
push 0x400
mov ecx, dword [ebp + 8]
push ecx
call fcn.0041b657
add esp, 8
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x19c]
mov ecx, dword [eax + 0x1cdc]
mov dword [ecx + 0x7f8], 0x66d8b337
jmp 0x420408
movsx edx, word [ebp - 0xc]
test edx, edx
je 0x41f3fc
push 0x4000
mov eax, dword [ebp + 8]
push eax
call fcn.0041b5e0
add esp, 8
jmp 0x41f40d
push 0x4000
mov ecx, dword [ebp + 8]
push ecx
call fcn.0041b657
add esp, 8
jmp 0x420408
push 0x19
mov edx, dword [ebp + 8]
push edx
call fcn.00448e40
add esp, 8
cmp eax, 0x9320
jne 0x41f460
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0xd4]
mov edx, dword [ebp + 0x10]
mov dword [ecx + 0x1070], edx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0xd4]
cmp dword [ecx + 0x1070], 0
jge 0x41f45e
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0xd4]
mov dword [eax + 0x1070], 0
jmp 0x41f4bd
mov ecx, dword [ebp + 8]
cmp dword [ecx + 0x80], 0
je 0x41f480
xor edx, edx
test edx, edx
je 0x41f480
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x80]
mov dword [ebp - 0x58], ecx
jmp 0x41f487
mov dword [ebp - 0x58], 0xffffffd3
mov edx, dword [ebp + 8]
mov eax, dword [ebp - 0x58]
mov dword [edx + 0x80], eax
push 0
push 0xff
push 0
push 0
push 0xd0
push 0xffffffffffffffd3
mov ecx, dword [ebp + 8]
push ecx
call fcn.00417d90
add esp, 0x1c
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x80]
mov dword [ebp - 0x10], eax
jmp 0x420408
movsx ecx, word [ebp - 0xc]
test ecx, ecx
je 0x41f4ed
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0xd4]
mov ecx, dword [eax + 0x10a4]
or ch, 4
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0xd4]
mov dword [eax + 0x10a4], ecx
jmp 0x41f50e
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0xd4]
mov eax, dword [edx + 0x10a4]
and ah, 0xfb
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0xd4]
mov dword [edx + 0x10a4], eax
jmp 0x420408
cmp dword [ebp + 0x10], 0x1000
jbe 0x41f523
mov dword [ebp + 0x10], 0x1000
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0xd4]
mov dx, word [ebp - 0xc]
mov word [ecx], dx
jmp 0x420408
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0xd4]
mov edx, dword [ebp + 0x10]
mov dword [ecx + 0x1068], edx
jmp 0x420408
movsx eax, word [ebp - 0xc]
test eax, eax
je 0x41f57c
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0xd4]
mov eax, dword [edx + 0x10a4]
or eax, 0x80000000
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0xd4]
mov dword [edx + 0x10a4], eax
jmp 0x41f5a0
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0xd4]
mov edx, dword [ecx + 0x10a4]
and edx, 0x7fffffff
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0xd4]
mov dword [ecx + 0x10a4], edx
jmp 0x420408
movsx edx, word [ebp - 0xc]
test edx, edx
je 0x41f5c7
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x138]
and ecx, 0xdfffffff
mov edx, dword [ebp + 8]
mov dword [edx + 0x138], ecx
jmp 0x41f5df
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x138]
or ecx, 0x20000000
mov edx, dword [ebp + 8]
mov dword [edx + 0x138], ecx
jmp 0x420408
movsx eax, word [ebp - 0xc]
test eax, eax
je 0x41f606
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x138]
or edx, 0x20000000
mov eax, dword [ebp + 8]
mov dword [eax + 0x138], edx
jmp 0x41f61e
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x138]
and edx, 0xdfffffff
mov eax, dword [ebp + 8]
mov dword [eax + 0x138], edx
jmp 0x420408
movsx ecx, word [ebp - 0xc]
test ecx, ecx
je 0x41f64e
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x19c]
mov ecx, dword [eax + 0x1ce4]
or ecx, 0x20
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x19c]
mov dword [eax + 0x1ce4], ecx
jmp 0x41f66e
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x19c]
mov eax, dword [edx + 0x1ce4]
and al, 0xdf
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x19c]
mov dword [edx + 0x1ce4], eax
jmp 0x420408
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0xd4]
mov dx, word [ebp - 0xc]
mov word [ecx + 0x1064], dx
jmp 0x420408
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0xd4]
mov dx, word [ebp - 0xc]
mov word [ecx + 0x20], dx
jmp 0x420408
cmp dword [ebp + 0x10], 0
je 0x41f6cb
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0xd4]
mov edx, dword [ecx + 0x10a4]
or dh, 0x20
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0xd4]
mov dword [ecx + 0x10a4], edx
jmp 0x41f6ec
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0xd4]
mov ecx, dword [eax + 0x10a4]
and ch, 0xdf
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0xd4]
mov dword [eax + 0x10a4], ecx
jmp 0x420408
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0xd4]
mov eax, dword [ebp + 0x10]
mov dword [edx + 0x1058], eax
jmp 0x420408
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0xd4]
mov eax, dword [ebp + 0x10]
mov dword [edx + 0x105c], eax
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0xd4]
mov dword [edx + 0x1060], 0
jmp 0x420408
cmp dword [ebp + 0x10], 0
je 0x41f75e
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0xd4]
mov edx, dword [ecx + 0x10a4]
or edx, 0x20000
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0xd4]
mov dword [ecx + 0x10a4], edx
jmp 0x41f782
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0xd4]
mov ecx, dword [eax + 0x10a4]
and ecx, 0xfffdffff
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0xd4]
mov dword [eax + 0x10a4], ecx
jmp 0x420408
push 0
push 0
push 0
push 0
push 0
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x19c]
mov eax, dword [edx + 0x1cdc]
mov ecx, dword [eax + 0x55c]
push ecx
mov edx, dword [ebp + 0x10]
push edx
push 0
mov eax, dword [ebp + 8]
push eax
call fcn.004460f6
add esp, 0x24
jmp 0x420408
push 0x1e
mov ecx, dword [ebp + 8]
push ecx
call fcn.00448e40
add esp, 8
cmp eax, 0xd30f
je 0x41f832
mov edx, dword [ebp + 8]
cmp dword [edx + 0x80], 0
je 0x41f7f3
xor eax, eax
test eax, eax
je 0x41f7f3
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x80]
mov dword [ebp - 0x5c], edx
jmp 0x41f7fa
mov dword [ebp - 0x5c], 0xffffff8c
mov eax, dword [ebp + 8]
mov ecx, dword [ebp - 0x5c]
mov dword [eax + 0x80], ecx
push 0
push 0xff
push 0
push 0
push 0x21a
push 0xffffffffffffff8c
mov edx, dword [ebp + 8]
push edx
call fcn.00417d90
add esp, 0x1c
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x80]
jmp 0x42040b
push 0
push 0
push 0
push 0
push 0
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x19c]
mov eax, dword [edx + 0x1cdc]
mov ecx, dword [eax + 0x55c]
push ecx
push 0
mov edx, dword [ebp + 0x10]
push edx
mov eax, dword [ebp + 8]
push eax
call fcn.004460f6
add esp, 0x24
jmp 0x420408
cmp dword [ebp - 4], 0
jne 0x41f876
mov dword [ebp - 4], 0x544808
push 0xc
mov ecx, dword [ebp - 4]
push ecx
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0xd4]
add eax, 0xc47
push eax
call fcn.0042a687
add esp, 0xc
jmp 0x420408
mov ecx, dword [ebp + 0x10]
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x28], 0
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x30], 0
mov edx, dword [ebp - 0x2c]
add edx, 0x3c
mov dword [ebp - 0x28], edx
jmp 0x41f8d3
mov eax, dword [ebp - 0x30]
add eax, 1
mov dword [ebp - 0x30], eax
mov ecx, dword [ebp - 0x28]
add ecx, 0x90
mov dword [ebp - 0x28], ecx
cmp dword [ebp - 0x30], 4
jge 0x41f96e
mov edx, dword [ebp - 0x28]
cmp dword [edx + 0x84], 0
jne 0x41f8ee
jmp 0x41f96e
mov eax, dword [ebp - 0x28]
cmp dword [eax + 0x88], 2
jl 0x41f908
mov ecx, dword [ebp - 0x28]
mov edx, dword [ecx + 0x84]
mov dword [ebp - 0x60], edx
jmp 0x41f90f
mov dword [ebp - 0x60], 0
mov eax, dword [ebp - 0x28]
cmp dword [eax + 0x88], 2
jl 0x41f929
mov ecx, dword [ebp - 0x28]
mov edx, dword [ecx + 0x84]
mov dword [ebp - 0x64], edx
jmp 0x41f930
mov dword [ebp - 0x64], 0
mov eax, dword [ebp - 0x28]
mov ecx, dword [eax + 0x88]
push ecx
mov edx, dword [ebp - 0x28]
push edx
mov eax, dword [ebp - 0x28]
add eax, 0xc
push eax
mov ecx, dword [ebp - 0x28]
push ecx
push 8
mov edx, dword [ebp - 0x28]
mov eax, dword [edx + 0x8c]
push eax
mov ecx, dword [ebp - 0x60]
push ecx
mov edx, dword [ebp - 0x64]
push edx
mov eax, dword [ebp + 8]
push eax
call fcn.004460f6
add esp, 0x24
jmp 0x41f8be
jmp 0x420408
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x19c]
mov eax, dword [edx + 0x1cdc]
mov ecx, dword [ebp - 8]
mov dword [eax + 0x560], ecx
jmp 0x420408
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x19c]
mov ecx, dword [eax + 0x1cdc]
mov edx, dword [ebp + 0x10]
mov dword [ecx + 0x814], edx
mov eax, dword [ebp + 8]
push eax
call fcn.0046b33b
add esp, 4
jmp 0x420408
cmp dword [ebp + 0x10], 0
je 0x41f9e1
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0xd4]
mov eax, dword [edx + 0x10a4]
or al, 0x10
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0xd4]
mov dword [edx + 0x10a4], eax
jmp 0x41fa02
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0xd4]
mov edx, dword [ecx + 0x10a4]
and edx, 0xffffffef
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0xd4]
mov dword [ecx + 0x10a4], edx
jmp 0x420408
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0xd4]
mov ecx, dword [ebp + 0x10]
mov dword [eax + 0x18], ecx
jmp 0x420408
cmp dword [ebp + 0x10], 0
jl 0x41fa54
cmp dword [ebp + 0x10], 0x1e
jge 0x41fa54
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0xd4]
cmp dword [eax + 0x14], 0x162e
jne 0x41fa3f
cmp dword [ebp + 0x10], 0
jg 0x41fa54
push 0x52ba84
mov ecx, dword [ebp + 8]
push ecx
call fcn.00433dee
add esp, 8
test eax, eax
je 0x41fa65
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0xd4]
mov ecx, dword [ebp + 0x10]
mov dword [eax + 0x10], ecx
jmp 0x41fac2
mov edx, dword [ebp + 8]
cmp dword [edx + 0x80], 0
je 0x41fa85
xor eax, eax
test eax, eax
je 0x41fa85
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x80]
mov dword [ebp - 0x68], edx
jmp 0x41fa8c
mov dword [ebp - 0x68], 0xffffffd6
mov eax, dword [ebp + 8]
mov ecx, dword [ebp - 0x68]
mov dword [eax + 0x80], ecx
push 0
push 0xff
push 0
push 0
push 0xd1
push 0xffffffffffffffd6
mov edx, dword [ebp + 8]
push edx
call fcn.00417d90
add esp, 0x1c
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x80]
mov dword [ebp - 0x10], ecx
jmp 0x420408
cmp dword [ebp + 0x10], 0
je 0x41fae0
push 0x80
mov edx, dword [ebp + 8]
push edx
call fcn.0041b5e0
add esp, 8
jmp 0x41faf1
push 0x80
mov eax, dword [ebp + 8]
push eax
call fcn.0041b657
add esp, 8
jmp 0x420408
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0xd4]
mov eax, dword [ebp + 0x10]
mov dword [edx + 0x1074], eax
jmp 0x420408
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0xd4]
mov eax, dword [ebp + 0x10]
mov dword [edx + 0x1078], eax
jmp 0x420408
cmp dword [ebp + 0x10], 0
je 0x41fb3d
push 0x800
mov ecx, dword [ebp + 8]
push ecx
call fcn.0041b5e0
add esp, 8
jmp 0x41fb4e
push 0x800
mov edx, dword [ebp + 8]
push edx
call fcn.0041b657
add esp, 8
jmp 0x420408
cmp dword [ebp + 0x10], 0
je 0x41fb7c
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0xd4]
mov edx, dword [ecx + 0x10a4]
or edx, 0x20
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0xd4]
mov dword [ecx + 0x10a4], edx
jmp 0x41fb9d
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0xd4]
mov ecx, dword [eax + 0x10a4]
and ecx, 0xffffffdf
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0xd4]
mov dword [eax + 0x10a4], ecx
jmp 0x420408
cmp dword [ebp - 8], 0
jle 0x41fc1d
cmp dword [ebp - 8], 0x3c
jge 0x41fc1d
mov ecx, dword [ebp + 8]
cmp dword [ecx + 0x80], 0
je 0x41fbce
xor edx, edx
test edx, edx
je 0x41fbce
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x80]
mov dword [ebp - 0x6c], ecx
jmp 0x41fbd5
mov dword [ebp - 0x6c], 0xffffffd6
mov edx, dword [ebp + 8]
mov eax, dword [ebp - 0x6c]
mov dword [edx + 0x80], eax
push 0
push 0xff
push 0
push 0
push 0x11d
push 0xffffffffffffffd6
mov ecx, dword [ebp + 8]
push ecx
call fcn.00417d90
add esp, 0x1c
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x80]
mov dword [ebp - 0x10], eax
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0xd0]
mov dword [edx + 0x40], 0x3c
jmp 0x41fc2c
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0xd0]
mov edx, dword [ebp - 8]
mov dword [ecx + 0x40], edx
jmp 0x420408
jmp 0x420408
movsx eax, word [ebp - 0xc]
test eax, eax
je 0x41fc60
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0xd4]
mov eax, dword [edx + 0x10a4]
or al, 8
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0xd4]
mov dword [edx + 0x10a4], eax
jmp 0x41fc81
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0xd4]
mov edx, dword [ecx + 0x10a4]
and edx, 0xfffffff7
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0xd4]
mov dword [ecx + 0x10a4], edx
jmp 0x420408
movsx edx, word [ebp - 0xc]
test edx, edx
je 0x41fcb1
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0xd4]
mov edx, dword [ecx + 0x10a4]
or edx, 2
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0xd4]
mov dword [ecx + 0x10a4], edx
jmp 0x41fcd2
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0xd4]
mov ecx, dword [eax + 0x10a4]
and ecx, 0xfffffffd
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0xd4]
mov dword [eax + 0x10a4], ecx
jmp 0x420408
movsx ecx, word [ebp - 0xc]
test ecx, ecx
je 0x41fd03
push 0x4000
mov edx, dword [ebp + 8]
push edx
call fcn.0041b5e0
add esp, 8
push 0x2000
mov eax, dword [ebp + 8]
push eax
call fcn.0041b5e0
add esp, 8
jmp 0x41fd14
push 0x2000
mov ecx, dword [ebp + 8]
push ecx
call fcn.0041b657
add esp, 8
jmp 0x420408
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0xd4]
mov ecx, dword [ebp + 0x10]
mov dword [eax + 0x24], ecx
jmp 0x420408
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0xd4]
mov ecx, dword [ebp + 0x10]
mov dword [eax + 0x30], ecx
jmp 0x420408
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0xd4]
mov ecx, dword [ebp + 0x10]
mov dword [eax + 0x10ac], ecx
jmp 0x420408
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0xd4]
mov ecx, dword [ebp + 0x10]
mov dword [eax + 0x28], ecx
jmp 0x420408
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0xd4]
mov ecx, dword [ebp + 0x10]
mov dword [eax + 0x34], ecx
jmp 0x420408
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0xd4]
mov ecx, dword [ebp + 0x10]
mov dword [eax + 0x2c], ecx
jmp 0x420408
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0xd4]
mov ecx, dword [ebp + 0x10]
mov dword [eax + 0x38], ecx
jmp 0x420408
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x19c]
mov ecx, dword [eax + 0x1cdc]
mov edx, dword [ebp + 0x10]
mov dword [ecx + 0x574], edx
jmp 0x420408
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x19c]
mov edx, dword [ecx + 0x1cdc]
mov eax, dword [ebp + 0x10]
mov dword [edx + 0x53c], eax
jmp 0x420408
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x19c]
mov eax, dword [edx + 0x1cdc]
mov ecx, dword [ebp + 0x10]
mov dword [eax + 0x540], ecx
jmp 0x420408
cmp dword [ebp - 4], 0
jne 0x41fe0c
mov dword [ebp - 4], 0x54480c
push 0x400
mov edx, dword [ebp - 4]
push edx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0xd4]
add ecx, 0x44
push ecx
call fcn.0050d040
add esp, 0xc
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0xd4]
mov byte [eax + 0x444], 0
jmp 0x420408
cmp dword [ebp + 0x10], 0
je 0x41fe58
push 0x8000
mov ecx, dword [ebp + 8]
push ecx
call fcn.0041b5e0
add esp, 8
jmp 0x41fe69
push 0x8000
mov edx, dword [ebp + 8]
push edx
call fcn.0041b657
add esp, 8
jmp 0x420408
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0xd4]
mov edx, dword [ebp + 0x10]
mov dword [ecx + 0x1080], edx
jmp 0x420408
mov dword [ebp - 0x34], 0
push 0x14
mov eax, dword [ebp + 8]
push eax
call fcn.00412420
add esp, 8
mov dword [ebp - 0x34], eax
push 0x14
mov ecx, dword [ebp + 0x10]
push ecx
mov edx, dword [ebp - 0x34]
push edx
call fcn.0050d2a0
add esp, 0xc
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x19c]
mov edx, dword [ecx + 0x1cdc]
mov eax, dword [ebp - 0x34]
mov ecx, dword [edx + 0x810]
mov dword [eax + 0x10], ecx
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x19c]
mov ecx, dword [eax + 0x1cdc]
mov edx, dword [ebp - 0x34]
mov eax, dword [edx + 0xc]
mov dword [ecx + 0x80c], eax
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x19c]
mov eax, dword [edx + 0x1cdc]
mov ecx, dword [ebp - 0x34]
mov dword [eax + 0x810], ecx
mov edx, dword [ebp + 8]
push edx
call fcn.00412670
add esp, 4
jmp 0x420408
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x19c]
mov edx, dword [ecx + 0x1cdc]
mov eax, dword [ebp + 0x10]
mov dword [edx + 0x80c], eax
jmp 0x420408
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0xd4]
mov eax, dword [ebp + 0x10]
mov dword [edx + 0x1084], eax
jmp 0x420408
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0xd4]
mov eax, dword [ebp + 0x10]
mov dword [edx + 0x1090], eax
jmp 0x420408
push 0x27c
mov ecx, dword [ebp + 0x10]
push ecx
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x19c]
mov ecx, dword [eax + 0x1cdc]
add ecx, 0x57c
push ecx
call fcn.0050d2a0
add esp, 0xc
jmp 0x420408
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0xd4]
mov ecx, dword [ebp + 0x10]
mov dword [eax + 0x10a8], ecx
jmp 0x420408
mov edx, dword [ebp + 0x10]
mov dword [ebp - 0x38], edx
cmp dword [ebp - 0x38], 0
je 0x41ffc1
mov eax, dword [ebp - 0x38]
mov ecx, dword [eax]
push ecx
mov edx, dword [ebp - 0x38]
mov eax, dword [edx + 4]
push eax
mov ecx, dword [ebp + 8]
push ecx
call fcn.0046a9f0
add esp, 0xc
jmp 0x420408
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x19c]
mov ecx, dword [eax + 0x1cdc]
cmp dword [ecx + 0x8d0], 0
je 0x420015
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x19c]
mov ecx, dword [eax + 0x1cdc]
mov edx, dword [ecx + 0x8d0]
push edx
call fcn.00412654
add esp, 4
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x19c]
mov edx, dword [ecx + 0x1cdc]
mov dword [edx + 0x8d0], 0
cmp dword [ebp + 0x10], 0
je 0x42006a
mov eax, dword [ebp + 0x10]
push eax
call fcn.0050c510
add esp, 4
add eax, 1
push eax
call fcn.0050c859
add esp, 4
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x19c]
mov ecx, dword [edx + 0x1cdc]
mov dword [ecx + 0x8d0], eax
mov edx, dword [ebp + 0x10]
push edx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x19c]
mov edx, dword [ecx + 0x1cdc]
mov eax, dword [edx + 0x8d0]
push eax
call fcn.0050c8f0
add esp, 8
jmp 0x420408
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x19c]
mov eax, dword [edx + 0x1cdc]
mov ecx, dword [ebp + 0x10]
mov dword [eax + 0x8cc], ecx
jmp 0x420408
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x19c]
mov ecx, dword [eax + 0x1cdc]
mov edx, dword [ebp + 0x10]
mov dword [ecx + 0x818], edx
jmp 0x420408
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x19c]
mov edx, dword [ecx + 0x1cdc]
mov eax, dword [ebp + 0x10]
mov dword [edx + 0x81c], eax
jmp 0x420408
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x19c]
mov eax, dword [edx + 0x1cdc]
mov ecx, dword [ebp + 0x10]
mov dword [eax + 0x820], ecx
jmp 0x420408
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x19c]
mov ecx, dword [eax + 0x1cdc]
mov edx, dword [ebp + 0x10]
mov dword [ecx + 0x824], edx
jmp 0x420408
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x19c]
mov edx, dword [ecx + 0x1cdc]
mov eax, dword [ebp + 0x10]
mov dword [edx + 0x828], eax
jmp 0x420408
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x19c]
mov eax, dword [edx + 0x1cdc]
mov ecx, dword [ebp + 0x10]
mov dword [eax + 0x82c], ecx
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x19c]
mov ecx, dword [eax + 0x1ce8]
add ecx, 1
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x19c]
mov dword [eax + 0x1ce8], ecx
jmp 0x420408
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x19c]
mov eax, dword [edx + 0x1cdc]
mov ecx, dword [ebp + 0x10]
mov dword [eax + 0x830], ecx
jmp 0x420408
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x19c]
mov ecx, dword [eax + 0x1cdc]
mov edx, dword [ebp + 0x10]
mov dword [ecx + 0x834], edx
jmp 0x420408
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x19c]
mov edx, dword [ecx + 0x1cdc]
mov eax, dword [ebp + 0x10]
mov dword [edx + 0x838], eax
jmp 0x420408
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x19c]
mov eax, dword [edx + 0x1cdc]
mov ecx, dword [ebp + 0x10]
mov dword [eax + 0x83c], ecx
jmp 0x420408
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x19c]
mov ecx, dword [eax + 0x1cdc]
mov edx, dword [ebp + 0x10]
mov dword [ecx + 0x840], edx
jmp 0x420408
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x19c]
mov edx, dword [ecx + 0x1cdc]
mov eax, dword [ebp + 0x10]
mov dword [edx + 0xaf0], eax
jmp 0x420408
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x19c]
mov eax, dword [edx + 0x1cdc]
mov ecx, dword [ebp + 0x10]
mov dword [eax + 0xaf4], ecx
jmp 0x420408
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x19c]
mov ecx, dword [eax + 0x1cdc]
mov edx, dword [ebp + 0x10]
mov dword [ecx + 0xaf8], edx
jmp 0x420408
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x19c]
mov edx, dword [ecx + 0x1cdc]
mov eax, dword [ebp + 0x10]
mov dword [edx + 0xafc], eax
jmp 0x420408
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x19c]
mov eax, dword [edx + 0x1cdc]
mov ecx, dword [ebp + 0x10]
mov dword [eax + 0xb00], ecx
jmp 0x420408
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x19c]
mov ecx, dword [eax + 0x1cdc]
mov edx, dword [ebp + 0x10]
mov dword [ecx + 0xb04], edx
jmp 0x420408
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x19c]
mov edx, dword [ecx + 0x1cdc]
mov eax, dword [ebp + 0x10]
mov dword [edx + 0xb08], eax
jmp 0x420408
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x19c]
mov eax, dword [edx + 0x1cdc]
cmp dword [eax + 0xb0c], 0
je 0x420306
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x19c]
mov eax, dword [edx + 0x1cdc]
mov ecx, dword [eax + 0xb0c]
push ecx
call fcn.00412654
add esp, 4
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x19c]
mov ecx, dword [eax + 0x1cdc]
mov dword [ecx + 0xb0c], 0
cmp dword [ebp + 0x10], 0
je 0x42035b
mov edx, dword [ebp + 0x10]
push edx
call fcn.0050c510
add esp, 4
add eax, 1
push eax
call fcn.0050c859
add esp, 4
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x19c]
mov ecx, dword [edx + 0x1cdc]
mov dword [ecx + 0xb0c], eax
mov edx, dword [ebp + 0x10]
push edx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x19c]
mov edx, dword [ecx + 0x1cdc]
mov eax, dword [edx + 0xb0c]
push eax
call fcn.0050c8f0
add esp, 8
jmp 0x420408
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x19c]
mov eax, dword [edx + 0x1cdc]
mov ecx, dword [ebp + 0x10]
mov dword [eax + 0x554], ecx
jmp 0x420408
xor edx, edx
cmp dword [ebp + 0x10], 0
setne dl
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x19c]
mov dword [ecx + 0x1cec], edx
jmp 0x420408
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x19c]
mov ecx, dword [ebp + 0x10]
mov dword [eax + 0x1d04], ecx
jmp 0x420408
mov edx, dword [ebp + 8]
cmp dword [edx + 0x80], 0
je 0x4203cb
xor eax, eax
test eax, eax
je 0x4203cb
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x80]
mov dword [ebp - 0x70], edx
jmp 0x4203d2
mov dword [ebp - 0x70], 0xffffffe0
mov eax, dword [ebp + 8]
mov ecx, dword [ebp - 0x70]
mov dword [eax + 0x80], ecx
push 0
push 0xff
push 0
push 0
push 0xd2
push 0xffffffffffffffe0
mov edx, dword [ebp + 8]
push edx
call fcn.00417d90
add esp, 0x1c
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x80]
mov dword [ebp - 0x10], ecx