Function at 0x41f7e0
Capabilities:
Parse pe header

Disassembly:
push ebp
mov ebp, esp
push esi
push ebx
sub esp, 0x40
mov eax, dword [0x5bcb6c]
lock inc dword [eax + 0x34]
setne dl
mov ebx, dword [0x5bcb6c]
cmp dword [0x5bb5e4], ebx
je 0x41f82d
lock inc dword [ebx + 0x34]
setne al
mov eax, dword [0x5bb5e4]
lock dec dword [eax + 0x34]
setne dl
test dl, dl
je 0x421e35
test byte [ebx + 0x44], 2
mov dword [0x5bb5e4], ebx
je 0x421e26
lock dec dword [ebx + 0x34]
setne al
test al, al
jne 0x41f84a
mov dword [esp], 4
mov ecx, ebx
call dword [0x5bcb70]
sub esp, 4
mov ecx, dword [0x5bb5e4]
mov eax, dword [ecx + 0x34]
cmp eax, 1
je 0x41f868
mov ecx, 0x5bb5e4
call fcn.00425200
mov ecx, dword [0x5bb5e4]
mov edx, dword [ecx + 0x38]
mov esi, ecx
lea ebx, [ebp - 0x38]
test edx, edx
js 0x421dae
mov eax, dword [esi + edx*4 + 4]
cmp eax, ecx
je 0x41f892
cmp word [eax - 4], 0xff
ja 0x41f892
mov esi, eax
mov eax, dword [esi + edx*4 + 4]
cmp eax, ecx
jne 0x41f880
mov dword [ebx + edx*4], esi
sub edx, 1
cmp edx, 0xffffffff
jne 0x41f878
cmp eax, ecx
je 0x421dae
cmp word [eax - 4], 0x100
ja 0x421dae
mov byte [eax - 2], 0x1b
mov ecx, 0x5bb5e4
mov esi, 0x3b00
mov dword [esp], ebx
mov word [ebp - 0x38], si
call fcn.004252e0
mov ecx, 0x5bb5e4
sub esp, 4
mov byte [eax], 0x70
mov eax, 0x3c00
mov dword [esp], ebx
mov word [ebp - 0x38], ax
call fcn.004252e0
mov byte [eax], 0x71
mov ecx, dword [0x5bb5e4]
sub esp, 4
mov eax, dword [ecx + 0x34]
cmp eax, 1
je 0x41f90b
mov ecx, 0x5bb5e4
call fcn.00425200
mov ecx, dword [0x5bb5e4]
mov edx, dword [ecx + 0x38]
mov esi, ecx
test edx, edx
js 0x421dea
mov eax, dword [esi + edx*4 + 4]
cmp eax, ecx
je 0x41f932
cmp word [eax - 4], 0x3cff
ja 0x41f932
mov esi, eax
mov eax, dword [esi + edx*4 + 4]
cmp eax, ecx
jne 0x41f920
mov dword [ebx + edx*4], esi
sub edx, 1
cmp edx, 0xffffffff
jne 0x41f918
cmp ecx, eax
je 0x421dea
cmp word [eax - 4], 0x3d00
ja 0x421dea
mov byte [eax - 2], 0x72
mov ecx, dword [0x5bb5e4]
mov eax, dword [ecx + 0x34]
cmp eax, 1
je 0x41f973
mov ecx, 0x5bb5e4
call fcn.00425200
mov ecx, dword [0x5bb5e4]
mov edx, dword [ecx + 0x38]
mov esi, ecx
test edx, edx
js 0x421d72
mov eax, dword [esi + edx*4 + 4]
cmp eax, ecx
je 0x41f9a0
cmp word [eax - 4], 0x3dff
ja 0x41f9a0
mov esi, eax
mov eax, dword [esi + edx*4 + 4]
cmp eax, ecx
jne 0x41f988
lea esi, [esi]
mov dword [ebx + edx*4], esi
sub edx, 1
cmp edx, 0xffffffff
jne 0x41f980
cmp ecx, eax
je 0x421d72
cmp word [eax - 4], 0x3e00
ja 0x421d72
mov ecx, 0x3f00
mov esi, 0x4000
mov byte [eax - 2], 0x73
mov word [ebp - 0x38], cx
mov ecx, 0x5bb5e4
mov dword [esp], ebx
call fcn.004252e0
mov ecx, 0x5bb5e4
sub esp, 4
mov byte [eax], 0x74
mov dword [esp], ebx
mov word [ebp - 0x38], si
call fcn.004252e0
mov ecx, 0x5bb5e4
sub esp, 4
mov byte [eax], 0x75
mov eax, 0x4100
mov dword [esp], ebx
mov word [ebp - 0x38], ax
call fcn.004252e0
mov byte [eax], 0x76
mov ecx, dword [0x5bb5e4]
sub esp, 4
mov eax, dword [ecx + 0x34]
cmp eax, 1
je 0x41fa35
mov ecx, 0x5bb5e4
call fcn.00425200
mov ecx, dword [0x5bb5e4]
mov edx, dword [ecx + 0x38]
mov esi, ecx
test edx, edx
js 0x421d36
mov eax, dword [esi + edx*4 + 4]
cmp eax, ecx
je 0x41fa60
cmp word [eax - 4], 0x41ff
ja 0x41fa60
mov esi, eax
mov eax, dword [esi + edx*4 + 4]
cmp eax, ecx
jne 0x41fa4a
lea esi, [esi]
mov dword [ebx + edx*4], esi
sub edx, 1
cmp edx, 0xffffffff
jne 0x41fa42
cmp ecx, eax
je 0x421d36
cmp word [eax - 4], 0x4200
ja 0x421d36
mov byte [eax - 2], 0x77
mov ecx, 0x5bb5e4
mov eax, 0x4300
mov dword [esp], ebx
mov word [ebp - 0x38], ax
call fcn.004252e0
mov byte [eax], 0x78
mov ecx, dword [0x5bb5e4]
sub esp, 4
mov eax, dword [ecx + 0x34]
cmp eax, 1
je 0x41fabd
mov ecx, 0x5bb5e4
call fcn.00425200
mov ecx, dword [0x5bb5e4]
mov edx, dword [ecx + 0x38]
mov esi, ecx
test edx, edx
js 0x421cfa
lea esi, [esi]
mov eax, dword [esi + edx*4 + 4]
cmp eax, ecx
je 0x41faf0
cmp word [eax - 4], 0x43ff
ja 0x41faf0
mov esi, eax
mov eax, dword [esi + edx*4 + 4]
cmp eax, ecx
jne 0x41fad8
lea esi, [esi]
mov dword [ebx + edx*4], esi
sub edx, 1
cmp edx, 0xffffffff
jne 0x41fad0
cmp ecx, eax
je 0x421cfa
cmp word [eax - 4], 0x4400
ja 0x421cfa
mov ecx, 0x5700
mov byte [eax - 2], 0x79
mov word [ebp - 0x38], cx
mov ecx, 0x5bb5e4
mov dword [esp], ebx
call fcn.004252e0
mov byte [eax], 0x7a
mov ecx, dword [0x5bb5e4]
sub esp, 4
mov eax, dword [ecx + 0x34]
cmp eax, 1
je 0x41fb4d
mov ecx, 0x5bb5e4
call fcn.00425200
mov ecx, dword [0x5bb5e4]
mov edx, dword [ecx + 0x38]
mov esi, ecx
test edx, edx
js 0x421cbe
lea esi, [esi]
mov eax, dword [esi + edx*4 + 4]
cmp eax, ecx
je 0x41fb80
cmp word [eax - 4], 0x57ff
ja 0x41fb80
mov esi, eax
mov eax, dword [esi + edx*4 + 4]
cmp eax, ecx
jne 0x41fb68
lea esi, [esi]
mov dword [ebx + edx*4], esi
sub edx, 1
cmp edx, 0xffffffff
jne 0x41fb60
cmp ecx, eax
je 0x421cbe
cmp word [eax - 4], 0x5800
ja 0x421cbe
mov byte [eax - 2], 0x7b
mov ecx, 0x5bb5e4
mov eax, 0x3701
mov dword [esp], ebx
mov word [ebp - 0x38], ax
call fcn.004252e0
mov ecx, 0x5bb5e4
sub esp, 4
mov byte [eax], 0x2c
mov eax, 0x4600
mov dword [esp], ebx
mov word [ebp - 0x38], ax
call fcn.004252e0
mov ecx, 0x5bb5e4
sub esp, 4
mov byte [eax], 0x91
mov eax, 0x4500
mov dword [esp], ebx
mov word [ebp - 0x38], ax
call fcn.004252e0
mov byte [eax], 0x13
mov ecx, dword [0x5bb5e4]
sub esp, 4
mov eax, dword [ecx + 0x34]
cmp eax, 1
je 0x41fc15
mov ecx, 0x5bb5e4
call fcn.00425200
mov ecx, dword [0x5bb5e4]
mov edx, dword [ecx + 0x38]
mov esi, ecx
test edx, edx
js 0x421c82
mov eax, dword [esi + edx*4 + 4]
cmp eax, ecx
je 0x41fc40
cmp word [eax - 4], 0x28ff
ja 0x41fc40
mov esi, eax
mov eax, dword [esi + edx*4 + 4]
cmp eax, ecx
jne 0x41fc2a
lea esi, [esi]
mov dword [ebx + edx*4], esi
sub edx, 1
cmp edx, 0xffffffff
jne 0x41fc22
cmp ecx, eax
je 0x421c82
cmp word [eax - 4], 0x2900
ja 0x421c82
mov ecx, 0x200
mov byte [eax - 2], 0xc0
mov word [ebp - 0x38], cx
mov ecx, 0x5bb5e4
mov dword [esp], ebx
call fcn.004252e0
mov byte [eax], 0x31
mov ecx, dword [0x5bb5e4]
sub esp, 4
mov eax, dword [ecx + 0x34]
cmp eax, 1
je 0x41fc9d
mov ecx, 0x5bb5e4
call fcn.00425200
mov ecx, dword [0x5bb5e4]
mov edx, dword [ecx + 0x38]
mov esi, ecx
test edx, edx
js 0x421c46
lea esi, [esi]
mov eax, dword [esi + edx*4 + 4]
cmp eax, ecx
je 0x41fcd0
cmp word [eax - 4], 0x2ff
ja 0x41fcd0
mov esi, eax
mov eax, dword [esi + edx*4 + 4]
cmp eax, ecx
jne 0x41fcb8
lea esi, [esi]
mov dword [ebx + edx*4], esi
sub edx, 1
cmp edx, 0xffffffff
jne 0x41fcb0
cmp ecx, eax
je 0x421c46
cmp word [eax - 4], 0x300
ja 0x421c46
mov ecx, 0x400
mov esi, 0x500
mov byte [eax - 2], 0x32
mov word [ebp - 0x38], cx
mov ecx, 0x5bb5e4
mov dword [esp], ebx
call fcn.004252e0
mov ecx, 0x5bb5e4
sub esp, 4
mov byte [eax], 0x33
mov dword [esp], ebx
mov word [ebp - 0x38], si
call fcn.004252e0
mov ecx, 0x5bb5e4
sub esp, 4
mov byte [eax], 0x34
mov eax, 0x600
mov dword [esp], ebx
mov word [ebp - 0x38], ax
call fcn.004252e0
mov ecx, 0x5bb5e4
sub esp, 4
mov byte [eax], 0x35
mov eax, 0x700
mov dword [esp], ebx
mov word [ebp - 0x38], ax
call fcn.004252e0
mov ecx, 0x5bb5e4
sub esp, 4
mov byte [eax], 0x36
mov eax, 0x800
mov dword [esp], ebx
mov word [ebp - 0x38], ax
call fcn.004252e0
mov ecx, 0x5bb5e4
sub esp, 4
mov byte [eax], 0x37
mov eax, 0x900
mov dword [esp], ebx
mov word [ebp - 0x38], ax
call fcn.004252e0
mov ecx, 0x5bb5e4
sub esp, 4
mov byte [eax], 0x38
mov eax, 0xa00
mov dword [esp], ebx
mov word [ebp - 0x38], ax
call fcn.004252e0
mov byte [eax], 0x39
mov ecx, dword [0x5bb5e4]
sub esp, 4
mov eax, dword [ecx + 0x34]
cmp eax, 1
je 0x41fdd5
mov ecx, 0x5bb5e4
call fcn.00425200
mov ecx, dword [0x5bb5e4]
mov edx, dword [ecx + 0x38]
mov esi, ecx
test edx, edx
js 0x421c0a
mov eax, dword [esi + edx*4 + 4]
cmp eax, ecx
je 0x41fe00
cmp word [eax - 4], 0xaff
ja 0x41fe00
mov esi, eax
mov eax, dword [esi + edx*4 + 4]
cmp eax, ecx
jne 0x41fdea
lea esi, [esi]
mov dword [ebx + edx*4], esi
sub edx, 1
cmp edx, 0xffffffff
jne 0x41fde2
cmp ecx, eax
je 0x421c0a
cmp word [eax - 4], 0xb00
ja 0x421c0a
mov byte [eax - 2], 0x30
mov ecx, 0x5bb5e4
mov eax, 0xc00
mov dword [esp], ebx
mov word [ebp - 0x38], ax
call fcn.004252e0
mov byte [eax], 0xbd
mov ecx, dword [0x5bb5e4]
sub esp, 4
mov eax, dword [ecx + 0x34]
cmp eax, 1
je 0x41fe5d
mov ecx, 0x5bb5e4
call fcn.00425200
mov ecx, dword [0x5bb5e4]
mov edx, dword [ecx + 0x38]
mov esi, ecx
test edx, edx
js 0x421bce
lea esi, [esi]
mov eax, dword [esi + edx*4 + 4]
cmp ecx, eax
je 0x41fe90
cmp word [eax - 4], 0xcff
ja 0x41fe90
mov esi, eax
mov eax, dword [esi + edx*4 + 4]
cmp ecx, eax
jne 0x41fe78
lea esi, [esi]
mov dword [ebx + edx*4], esi
sub edx, 1
cmp edx, 0xffffffff
jne 0x41fe70
cmp ecx, eax
je 0x421bce
cmp word [eax - 4], 0xd00
ja 0x421bce
mov byte [eax - 2], 0xbb
mov ecx, dword [0x5bb5e4]
mov eax, dword [ecx + 0x34]
cmp eax, 1
je 0x41fed1
mov ecx, 0x5bb5e4
call fcn.00425200
mov ecx, dword [0x5bb5e4]
mov edx, dword [ecx + 0x38]
mov esi, ecx
test edx, edx
js 0x421b92
nop
mov eax, dword [esi + edx*4 + 4]
cmp ecx, eax
je 0x41ff00
cmp word [eax - 4], 0xdff
ja 0x41ff00
mov esi, eax
mov eax, dword [esi + edx*4 + 4]
cmp ecx, eax
jne 0x41fee8
lea esi, [esi]
mov dword [ebx + edx*4], esi
sub edx, 1
cmp edx, 0xffffffff
jne 0x41fee0
cmp ecx, eax
je 0x421b92
cmp word [eax - 4], 0xe00
ja 0x421b92
mov byte [eax - 2], 8
mov ecx, dword [0x5bb5e4]
mov eax, dword [ecx + 0x34]
cmp eax, 1
je 0x41ff41
mov ecx, 0x5bb5e4
call fcn.00425200
mov ecx, dword [0x5bb5e4]
mov edx, dword [ecx + 0x38]
mov esi, ecx
test edx, edx
js 0x421b56
nop
mov eax, dword [esi + edx*4 + 4]
cmp ecx, eax
je 0x41ff70
cmp word [eax - 4], 0x5200
ja 0x41ff70
mov esi, eax
mov eax, dword [esi + edx*4 + 4]
cmp ecx, eax
jne 0x41ff58
lea esi, [esi]
mov dword [ebx + edx*4], esi
sub edx, 1
cmp edx, 0xffffffff
jne 0x41ff50
cmp ecx, eax
je 0x421b56
cmp word [eax - 4], 0x5201
ja 0x421b56
mov byte [eax - 2], 0x2d
mov ecx, dword [0x5bb5e4]
mov eax, dword [ecx + 0x34]
cmp eax, 1
je 0x41ffb1
mov ecx, 0x5bb5e4
call fcn.00425200
mov ecx, dword [0x5bb5e4]
mov edx, dword [ecx + 0x38]
mov esi, ecx
test edx, edx
js 0x421b1a
nop
mov eax, dword [esi + edx*4 + 4]
cmp ecx, eax
je 0x41ffe0
cmp word [eax - 4], 0x4700
ja 0x41ffe0
mov esi, eax
mov eax, dword [esi + edx*4 + 4]
cmp ecx, eax
jne 0x41ffc8
lea esi, [esi]
mov dword [ebx + edx*4], esi
sub edx, 1
cmp edx, 0xffffffff
jne 0x41ffc0
cmp ecx, eax
je 0x421b1a
cmp word [eax - 4], 0x4701
ja 0x421b1a
mov byte [eax - 2], 0x24
mov ecx, dword [0x5bb5e4]
mov eax, dword [ecx + 0x34]
cmp eax, 1
je 0x420021
mov ecx, 0x5bb5e4
call fcn.00425200
mov ecx, dword [0x5bb5e4]
mov edx, dword [ecx + 0x38]
mov esi, ecx
test edx, edx
js 0x421ade
nop
mov eax, dword [esi + edx*4 + 4]
cmp ecx, eax
je 0x420050
cmp word [eax - 4], 0x4900
ja 0x420050
mov esi, eax
mov eax, dword [esi + edx*4 + 4]
cmp ecx, eax
jne 0x420038
lea esi, [esi]
mov dword [ebx + edx*4], esi
sub edx, 1
cmp edx, 0xffffffff
jne 0x420030
cmp ecx, eax
je 0x421ade
cmp word [eax - 4], 0x4901
ja 0x421ade
mov byte [eax - 2], 0x21
mov ecx, dword [0x5bb5e4]
mov eax, dword [ecx + 0x34]
cmp eax, 1
je 0x420091
mov ecx, 0x5bb5e4
call fcn.00425200
mov ecx, dword [0x5bb5e4]
mov edx, dword [ecx + 0x38]
mov esi, ecx
test edx, edx
js 0x421aa2
nop
mov eax, dword [esi + edx*4 + 4]
cmp ecx, eax
je 0x4200c0
cmp word [eax - 4], 0x4500
ja 0x4200c0
mov esi, eax
mov eax, dword [esi + edx*4 + 4]
cmp ecx, eax
jne 0x4200a8
lea esi, [esi]
mov dword [ebx + edx*4], esi
sub edx, 1
cmp edx, 0xffffffff
jne 0x4200a0
cmp ecx, eax
je 0x421aa2
cmp word [eax - 4], 0x4501
ja 0x421aa2
mov byte [eax - 2], 0x90
mov ecx, 0x5bb5e4
mov eax, 0x3501
mov dword [esp], ebx
mov word [ebp - 0x38], ax
call fcn.004252e0
mov byte [eax], 0x6f
mov ecx, dword [0x5bb5e4]
sub esp, 4
mov eax, dword [ecx + 0x34]
cmp eax, 1
je 0x42011d
mov ecx, 0x5bb5e4
call fcn.00425200
mov ecx, dword [0x5bb5e4]
mov edx, dword [ecx + 0x38]
mov esi, ecx
test edx, edx
js 0x421a66
lea esi, [esi]
mov eax, dword [esi + edx*4 + 4]
cmp ecx, eax
je 0x420150
cmp word [eax - 4], 0x36ff
ja 0x420150
mov esi, eax
mov eax, dword [esi + edx*4 + 4]
cmp ecx, eax
jne 0x420138
lea esi, [esi]
mov dword [ebx + edx*4], esi
sub edx, 1
cmp edx, 0xffffffff
jne 0x420130
cmp ecx, eax
je 0x421a66
cmp word [eax - 4], 0x3700
ja 0x421a66
mov byte [eax - 2], 0x6a
mov ecx, dword [0x5bb5e4]
mov eax, dword [ecx + 0x34]
cmp eax, 1
je 0x420191
mov ecx, 0x5bb5e4
call fcn.00425200
mov ecx, dword [0x5bb5e4]
mov edx, dword [ecx + 0x38]
mov esi, ecx
test edx, edx
js 0x421a2a
nop
mov eax, dword [esi + edx*4 + 4]
cmp ecx, eax
je 0x4201c0
cmp word [eax - 4], 0x49ff
ja 0x4201c0
mov esi, eax
mov eax, dword [esi + edx*4 + 4]
cmp ecx, eax
jne 0x4201a8
lea esi, [esi]
mov dword [ebx + edx*4], esi
sub edx, 1
cmp edx, 0xffffffff
jne 0x4201a0
cmp ecx, eax
je 0x421a2a
cmp word [eax - 4], 0x4a00
ja 0x421a2a
mov byte [eax - 2], 0x6d
mov ecx, dword [0x5bb5e4]
mov eax, dword [ecx + 0x34]
cmp eax, 1
je 0x420201
mov ecx, 0x5bb5e4
call fcn.00425200
mov ecx, dword [0x5bb5e4]
mov edx, dword [ecx + 0x38]
mov esi, ecx
test edx, edx
js 0x4219ee
nop
mov eax, dword [esi + edx*4 + 4]
cmp ecx, eax
je 0x420230
cmp word [eax - 4], 0xeff
ja 0x420230
mov esi, eax
mov eax, dword [esi + edx*4 + 4]
cmp ecx, eax
jne 0x420218
lea esi, [esi]
mov dword [ebx + edx*4], esi
sub edx, 1
cmp edx, 0xffffffff
jne 0x420210
cmp ecx, eax
je 0x4219ee
cmp word [eax - 4], 0xf00
ja 0x4219ee
mov byte [eax - 2], 9
mov ecx, dword [0x5bb5e4]
mov eax, dword [ecx + 0x34]
cmp eax, 1
je 0x420271
mov ecx, 0x5bb5e4
call fcn.00425200
mov ecx, dword [0x5bb5e4]
mov edx, dword [ecx + 0x38]
mov esi, ecx
test edx, edx
js 0x4219b2
nop
mov eax, dword [esi + edx*4 + 4]
cmp ecx, eax
je 0x4202a0
cmp word [eax - 4], 0xfff
ja 0x4202a0
mov esi, eax
mov eax, dword [esi + edx*4 + 4]
cmp ecx, eax
jne 0x420288
lea esi, [esi]
mov dword [ebx + edx*4], esi
sub edx, 1
cmp edx, 0xffffffff
jne 0x420280
cmp ecx, eax
je 0x4219b2
cmp word [eax - 4], 0x1000
ja 0x4219b2
mov byte [eax - 2], 0x51
mov ecx, dword [0x5bb5e4]
mov eax, dword [ecx + 0x34]
cmp eax, 1
je 0x4202e1
mov ecx, 0x5bb5e4
call fcn.00425200
mov ecx, dword [0x5bb5e4]
mov edx, dword [ecx + 0x38]
mov esi, ecx
test edx, edx
js 0x421976
nop
mov eax, dword [esi + edx*4 + 4]
cmp ecx, eax
je 0x420310
cmp word [eax - 4], 0x10ff
ja 0x420310
mov esi, eax
mov eax, dword [esi + edx*4 + 4]
cmp ecx, eax
jne 0x4202f8
lea esi, [esi]
mov dword [ebx + edx*4], esi
sub edx, 1
cmp edx, 0xffffffff
jne 0x4202f0
cmp ecx, eax
je 0x421976
cmp word [eax - 4], 0x1100
ja 0x421976
mov byte [eax - 2], 0x57
mov ecx, dword [0x5bb5e4]
mov eax, dword [ecx + 0x34]
cmp eax, 1
je 0x420351
mov ecx, 0x5bb5e4
call fcn.00425200
mov ecx, dword [0x5bb5e4]
mov edx, dword [ecx + 0x38]
mov esi, ecx
test edx, edx
js 0x42193a
nop
mov eax, dword [esi + edx*4 + 4]
cmp ecx, eax
je 0x420380
cmp word [eax - 4], 0x11ff
ja 0x420380
mov esi, eax
mov eax, dword [esi + edx*4 + 4]
cmp ecx, eax
jne 0x420368
lea esi, [esi]
mov dword [ebx + edx*4], esi
sub edx, 1
cmp edx, 0xffffffff
jne 0x420360
cmp ecx, eax
je 0x42193a
cmp word [eax - 4], 0x1200
ja 0x42193a
mov byte [eax - 2], 0x45
mov ecx, dword [0x5bb5e4]
mov eax, dword [ecx + 0x34]
cmp eax, 1
je 0x4203c1
mov ecx, 0x5bb5e4
call fcn.00425200
mov ecx, dword [0x5bb5e4]
mov edx, dword [ecx + 0x38]
mov esi, ecx
test edx, edx
js 0x4218fe
nop
mov eax, dword [esi + edx*4 + 4]
cmp ecx, eax
je 0x4203f0
cmp word [eax - 4], 0x12ff
ja 0x4203f0
mov esi, eax
mov eax, dword [esi + edx*4 + 4]
cmp ecx, eax
jne 0x4203d8
lea esi, [esi]
mov dword [ebx + edx*4], esi
sub edx, 1
cmp edx, 0xffffffff
jne 0x4203d0
cmp ecx, eax
je 0x4218fe
cmp word [eax - 4], 0x1300
ja 0x4218fe
mov byte [eax - 2], 0x52
mov ecx, dword [0x5bb5e4]
mov eax, dword [ecx + 0x34]
cmp eax, 1
je 0x420431
mov ecx, 0x5bb5e4
call fcn.00425200
mov ecx, dword [0x5bb5e4]
mov edx, dword [ecx + 0x38]
mov esi, ecx
test edx, edx
js 0x4218c2
nop
mov eax, dword [esi + edx*4 + 4]
cmp ecx, eax
je 0x420460
cmp word [eax - 4], 0x13ff
ja 0x420460
mov esi, eax
mov eax, dword [esi + edx*4 + 4]
cmp ecx, eax
jne 0x420448
lea esi, [esi]
mov dword [ebx + edx*4], esi
sub edx, 1
cmp edx, 0xffffffff
jne 0x420440
cmp ecx, eax
je 0x4218c2
cmp word [eax - 4], 0x1400
ja 0x4218c2
mov byte [eax - 2], 0x54
mov ecx, dword [0x5bb5e4]
mov eax, dword [ecx + 0x34]
cmp eax, 1
je 0x4204a1
mov ecx, 0x5bb5e4
call fcn.00425200
mov ecx, dword [0x5bb5e4]
mov edx, dword [ecx + 0x38]
mov esi, ecx
test edx, edx
js 0x421886
nop
mov eax, dword [esi + edx*4 + 4]
cmp ecx, eax
je 0x4204d0
cmp word [eax - 4], 0x14ff
ja 0x4204d0
mov esi, eax
mov eax, dword [esi + edx*4 + 4]
cmp ecx, eax
jne 0x4204b8
lea esi, [esi]
mov dword [ebx + edx*4], esi
sub edx, 1
cmp edx, 0xffffffff
jne 0x4204b0
cmp ecx, eax
je 0x421886
cmp word [eax - 4], 0x1500
ja 0x421886
mov byte [eax - 2], 0x59
mov ecx, 0x5bb5e4
mov eax, 0x1600
mov dword [esp], ebx
mov word [ebp - 0x38], ax
call fcn.004252e0
mov byte [eax], 0x55
mov ecx, dword [0x5bb5e4]
sub esp, 4
mov eax, dword [ecx + 0x34]
cmp eax, 1
je 0x42052d
mov ecx, 0x5bb5e4
call fcn.00425200
mov ecx, dword [0x5bb5e4]
mov edx, dword [ecx + 0x38]
mov esi, ecx
test edx, edx
js 0x42184a
lea esi, [esi]
mov eax, dword [esi + edx*4 + 4]
cmp ecx, eax
je 0x420560
cmp word [eax - 4], 0x16ff
ja 0x420560
mov esi, eax
mov eax, dword [esi + edx*4 + 4]
cmp ecx, eax
jne 0x420548
lea esi, [esi]
mov dword [ebx + edx*4], esi
sub edx, 1
cmp edx, 0xffffffff
jne 0x420540
cmp ecx, eax
je 0x42184a
cmp word [eax - 4], 0x1700
ja 0x42184a
mov byte [eax - 2], 0x49
mov ecx, dword [0x5bb5e4]
mov eax, dword [ecx + 0x34]
cmp eax, 1
je 0x4205a1
mov ecx, 0x5bb5e4
call fcn.00425200
mov ecx, dword [0x5bb5e4]
mov edx, dword [ecx + 0x38]
mov esi, ecx
test edx, edx
js 0x42180e
nop
mov eax, dword [esi + edx*4 + 4]
cmp ecx, eax
je 0x4205d0
cmp word [eax - 4], 0x17ff
ja 0x4205d0
mov esi, eax
mov eax, dword [esi + edx*4 + 4]
cmp ecx, eax
jne 0x4205b8
lea esi, [esi]
mov dword [ebx + edx*4], esi
sub edx, 1
cmp edx, 0xffffffff
jne 0x4205b0
cmp ecx, eax
je 0x42180e
cmp word [eax - 4], 0x1800
ja 0x42180e
mov byte [eax - 2], 0x4f
mov ecx, dword [0x5bb5e4]
mov eax, dword [ecx + 0x34]
cmp eax, 1
je 0x420611
mov ecx, 0x5bb5e4
call fcn.00425200
mov ecx, dword [0x5bb5e4]
mov edx, dword [ecx + 0x38]
mov esi, ecx
test edx, edx
js 0x4217d2
nop
mov eax, dword [esi + edx*4 + 4]
cmp ecx, eax
je 0x420640
cmp word [eax - 4], 0x18ff
ja 0x420640
mov esi, eax
mov eax, dword [esi + edx*4 + 4]
cmp ecx, eax
jne 0x420628
lea esi, [esi]
mov dword [ebx + edx*4], esi
sub edx, 1
cmp edx, 0xffffffff
jne 0x420620
cmp ecx, eax
je 0x4217d2
cmp word [eax - 4], 0x1900
ja 0x4217d2
mov ecx, 0x1a00
mov esi, 0x1b00
mov byte [eax - 2], 0x50
mov word [ebp - 0x38], cx
mov ecx, 0x5bb5e4
mov dword [esp], ebx
call fcn.004252e0
mov ecx, 0x5bb5e4
sub esp, 4
mov byte [eax], 0xdb
mov dword [esp], ebx
mov word [ebp - 0x38], si
call fcn.004252e0
mov ecx, 0x5bb5e4
sub esp, 4
mov byte [eax], 0xdd
mov eax, 0x2b00
mov dword [esp], ebx
mov word [ebp - 0x38], ax
call fcn.004252e0
mov byte [eax], 0xdc
mov ecx, dword [0x5bb5e4]
sub esp, 4
mov eax, dword [ecx + 0x34]
cmp eax, 1
je 0x4206d5
mov ecx, 0x5bb5e4
call fcn.00425200
mov ecx, dword [0x5bb5e4]
mov edx, dword [ecx + 0x38]
mov esi, ecx
test edx, edx
js 0x421796
mov eax, dword [esi + edx*4 + 4]
cmp ecx, eax
je 0x420700
cmp word [eax - 4], 0x5300
ja 0x420700
mov esi, eax
mov eax, dword [esi + edx*4 + 4]
cmp ecx, eax
jne 0x4206ea
lea esi, [esi]
mov dword [ebx + edx*4], esi
sub edx, 1
cmp edx, 0xffffffff
jne 0x4206e2
cmp ecx, eax
je 0x421796
cmp word [eax - 4], 0x5301
ja 0x421796
mov byte [eax - 2], 0x2e
mov ecx, 0x5bb5e4
mov eax, 0x4f01
mov dword [esp], ebx
mov word [ebp - 0x38], ax
call fcn.004252e0
mov ecx, 0x5bb5e4
sub esp, 4
mov byte [eax], 0x23
mov eax, 0x5101
mov dword [esp], ebx
mov word [ebp - 0x38], ax
call fcn.004252e0
mov byte [eax], 0x22
mov ecx, dword [0x5bb5e4]
sub esp, 4
mov eax, dword [ecx + 0x34]
cmp eax, 1
je 0x420779
mov ecx, 0x5bb5e4
call fcn.00425200
mov ecx, dword [0x5bb5e4]
mov edx, dword [ecx + 0x38]
mov esi, ecx
test edx, edx
js 0x42175a
mov eax, dword [esi + edx*4 + 4]
cmp ecx, eax
je 0x4207a0
cmp word [eax - 4], 0x46ff
ja 0x4207a0
mov esi, eax
mov eax, dword [esi + edx*4 + 4]
cmp ecx, eax
jne 0x42078e
mov dword [ebx + edx*4], esi
sub edx, 1
cmp edx, 0xffffffff
jne 0x420786
cmp ecx, eax
je 0x42175a
cmp word [eax - 4], 0x4700
ja 0x42175a
mov ecx, 0x4800
mov byte [eax - 2], 0x67
mov word [ebp - 0x38], cx
mov ecx, 0x5bb5e4
mov dword [esp], ebx
call fcn.004252e0
mov byte [eax], 0x68
mov ecx, dword [0x5bb5e4]
sub esp, 4
mov eax, dword [ecx + 0x34]
cmp eax, 1
je 0x4207fd
mov ecx, 0x5bb5e4
call fcn.00425200
mov ecx, dword [0x5bb5e4]
mov edx, dword [ecx + 0x38]
mov esi, ecx
test edx, edx
js 0x42171e
lea esi, [esi]
mov eax, dword [esi + edx*4 + 4]
cmp ecx, eax
je 0x420830
cmp word [eax - 4], 0x48ff
ja 0x420830
mov esi, eax
mov eax, dword [esi + edx*4 + 4]
cmp ecx, eax
jne 0x420818
lea esi, [esi]
mov dword [ebx + edx*4], esi
sub edx, 1
cmp edx, 0xffffffff
jne 0x420810
cmp ecx, eax
je 0x42171e
cmp word [eax - 4], 0x4900
ja 0x42171e
mov ecx, 0x4e00
mov esi, 0x3a00
mov byte [eax - 2], 0x69
mov word [ebp - 0x38], cx
mov ecx, 0x5bb5e4
mov dword [esp], ebx
call fcn.004252e0
mov ecx, 0x5bb5e4
sub esp, 4
mov byte [eax], 0x6b
mov dword [esp], ebx
mov word [ebp - 0x38], si
call fcn.004252e0
mov ecx, 0x5bb5e4
sub esp, 4
mov byte [eax], 0x14
mov eax, 0x1e00
mov dword [esp], ebx
mov word [ebp - 0x38], ax
call fcn.004252e0
mov ecx, 0x5bb5e4
sub esp, 4
mov byte [eax], 0x41
mov eax, 0x1f00
mov dword [esp], ebx
mov word [ebp - 0x38], ax
call fcn.004252e0
mov ecx, 0x5bb5e4
sub esp, 4
mov byte [eax], 0x53
mov eax, 0x2000
mov dword [esp], ebx
mov word [ebp - 0x38], ax
call fcn.004252e0
mov ecx, 0x5bb5e4
sub esp, 4
mov byte [eax], 0x44
mov eax, 0x2100
mov dword [esp], ebx
mov word [ebp - 0x38], ax
call fcn.004252e0
mov byte [eax], 0x46
mov ecx, dword [0x5bb5e4]
sub esp, 4
mov eax, dword [ecx + 0x34]
cmp eax, 1
je 0x420919
mov ecx, 0x5bb5e4
call fcn.00425200
mov ecx, dword [0x5bb5e4]
mov edx, dword [ecx + 0x38]
mov esi, ecx
test edx, edx
js 0x4216e2
mov eax, dword [esi + edx*4 + 4]
cmp ecx, eax
je 0x420940
cmp word [eax - 4], 0x21ff
ja 0x420940
mov esi, eax
mov eax, dword [esi + edx*4 + 4]
cmp ecx, eax
jne 0x42092e
mov dword [ebx + edx*4], esi
sub edx, 1
cmp edx, 0xffffffff
jne 0x420926
cmp ecx, eax
je 0x4216e2
cmp word [eax - 4], 0x2200
ja 0x4216e2
mov byte [eax - 2], 0x47
mov ecx, dword [0x5bb5e4]
mov eax, dword [ecx + 0x34]
cmp eax, 1
je 0x420981
mov ecx, 0x5bb5e4
call fcn.00425200
mov ecx, dword [0x5bb5e4]
mov edx, dword [ecx + 0x38]
mov esi, ecx
test edx, edx
js 0x4216a6
nop
mov eax, dword [esi + edx*4 + 4]
cmp ecx, eax
je 0x4209b0
mov dword [esp + 8], 4
mov dword [esp + 4], 4
mov dword [esp], ebx
call dword [0x5bcb68]
sub esp, 0xc
cmp eax, 4
je 0x4216d0
mov dword [esp + 8], 4
mov dword [esp + 4], 4
mov dword [esp], ebx
call dword [0x5bcb68]
sub esp, 0xc
cmp eax, 4
je 0x42170c
mov edx, 0x2200
mov word [eax - 4], dx
cmp eax, 2
je 0x42095f
mov byte [eax - 2], 0
jmp 0x42095f
mov dword [esp + 8], 4
mov dword [esp + 4], 4
mov dword [esp], ebx
call dword [0x5bcb68]
sub esp, 0xc
cmp eax, 4
je 0x421748
mov edx, 0x4900
mov word [eax - 4], dx
cmp eax, 2
je 0x42084f
mov byte [eax - 2], 0
jmp 0x42084f
mov dword [esp + 8], 4
mov dword [esp + 4], 4
mov dword [esp], ebx
call dword [0x5bcb68]
sub esp, 0xc
cmp eax, 4
je 0x421784
mov esi, 0x4700
mov word [eax - 4], si
cmp eax, 2
je 0x4207bf
mov byte [eax - 2], 0
jmp 0x4207bf
mov dword [esp + 8], 4
mov dword [esp + 4], 4
mov dword [esp], ebx
call dword [0x5bcb68]
sub esp, 0xc
cmp eax, 4
je 0x4217c0
mov edx, 0x5301
mov word [eax - 4], dx
cmp eax, 2
je 0x42071f
mov byte [eax - 2], 0
jmp 0x42071f
mov dword [esp + 8], 4
mov dword [esp + 4], 4
mov dword [esp], ebx
call dword [0x5bcb68]
sub esp, 0xc
cmp eax, 4
je 0x4217fc
mov edx, 0x1900
mov word [eax - 4], dx
cmp eax, 2
je 0x42065f
mov byte [eax - 2], 0
jmp 0x42065f
mov dword [esp + 8], 4
mov dword [esp + 4], 4
mov dword [esp], ebx
call dword [0x5bcb68]
sub esp, 0xc
cmp eax, 4
je 0x421838
mov ecx, 0x1800
mov word [eax - 4], cx
cmp eax, 2
je 0x4205ef
mov byte [eax - 2], 0
jmp 0x4205ef
mov dword [esp + 8], 4
mov dword [esp + 4], 4
mov dword [esp], ebx
call dword [0x5bcb68]
sub esp, 0xc
cmp eax, 4
je 0x421874
mov esi, 0x1700
mov word [eax - 4], si
cmp eax, 2
je 0x42057f
mov byte [eax - 2], 0
jmp 0x42057f
mov dword [esp + 8], 4
mov dword [esp + 4], 4
mov dword [esp], ebx
call dword [0x5bcb68]
sub esp, 0xc
cmp eax, 4
je 0x4218b0
mov edx, 0x1500
mov word [eax - 4], dx
cmp eax, 2
je 0x4204ef
mov byte [eax - 2], 0
jmp 0x4204ef
mov dword [esp + 8], 4
mov dword [esp + 4], 4
mov dword [esp], ebx
call dword [0x5bcb68]
sub esp, 0xc
cmp eax, 4
je 0x4218ec
mov ecx, 0x1400
mov word [eax - 4], cx
cmp eax, 2
je 0x42047f
mov byte [eax - 2], 0
jmp 0x42047f
mov dword [esp + 8], 4
mov dword [esp + 4], 4
mov dword [esp], ebx
call dword [0x5bcb68]
sub esp, 0xc
cmp eax, 4
je 0x421928
mov esi, 0x1300
mov word [eax - 4], si
cmp eax, 2
je 0x42040f
mov byte [eax - 2], 0
jmp 0x42040f
mov dword [esp + 8], 4
mov dword [esp + 4], 4
mov dword [esp], ebx
call dword [0x5bcb68]
sub esp, 0xc
cmp eax, 4
je 0x421964
mov edx, 0x1200
mov word [eax - 4], dx
cmp eax, 2
je 0x42039f
mov byte [eax - 2], 0
jmp 0x42039f
mov dword [esp + 8], 4
mov dword [esp + 4], 4
mov dword [esp], ebx
call dword [0x5bcb68]
sub esp, 0xc
cmp eax, 4
je 0x4219a0
mov ecx, 0x1100
mov word [eax - 4], cx
cmp eax, 2
je 0x42032f
mov byte [eax - 2], 0
jmp 0x42032f
mov dword [esp + 8], 4
mov dword [esp + 4], 4
mov dword [esp], ebx
call dword [0x5bcb68]
sub esp, 0xc
cmp eax, 4
je 0x4219dc
mov esi, 0x1000
mov word [eax - 4], si
cmp eax, 2
je 0x4202bf
mov byte [eax - 2], 0
jmp 0x4202bf
mov dword [esp + 8], 4
mov dword [esp + 4], 4
mov dword [esp], ebx
call dword [0x5bcb68]
sub esp, 0xc
cmp eax, 4
je 0x421a18
mov edx, 0xf00
mov word [eax - 4], dx
cmp eax, 2
je 0x42024f
mov byte [eax - 2], 0
jmp 0x42024f
mov dword [esp + 8], 4
mov dword [esp + 4], 4
mov dword [esp], ebx
call dword [0x5bcb68]
sub esp, 0xc
cmp eax, 4
je 0x421a54
mov ecx, 0x4a00
mov word [eax - 4], cx
cmp eax, 2
je 0x4201df
mov byte [eax - 2], 0
jmp 0x4201df
mov dword [esp + 8], 4
mov dword [esp + 4], 4
mov dword [esp], ebx
call dword [0x5bcb68]
sub esp, 0xc
cmp eax, 4
je 0x421a90
mov esi, 0x3700
mov word [eax - 4], si
cmp eax, 2
je 0x42016f
mov byte [eax - 2], 0
jmp 0x42016f
mov dword [esp + 8], 4
mov dword [esp + 4], 4
mov dword [esp], ebx
call dword [0x5bcb68]
sub esp, 0xc
cmp eax, 4
je 0x421acc
mov edx, 0x4501
mov word [eax - 4], dx
cmp eax, 2
je 0x4200df
mov byte [eax - 2], 0
jmp 0x4200df
mov dword [esp + 8], 4
mov dword [esp + 4], 4
mov dword [esp], ebx
call dword [0x5bcb68]
sub esp, 0xc
cmp eax, 4
je 0x421b08
mov ecx, 0x4901
mov word [eax - 4], cx
cmp eax, 2
je 0x42006f
mov byte [eax - 2], 0
jmp 0x42006f
mov dword [esp + 8], 4
mov dword [esp + 4], 4
mov dword [esp], ebx
call dword [0x5bcb68]
sub esp, 0xc
cmp eax, 4
je 0x421b44
mov esi, 0x4701
mov word [eax - 4], si
cmp eax, 2
je 0x41ffff
mov byte [eax - 2], 0
jmp 0x41ffff
mov dword [esp + 8], 4
mov dword [esp + 4], 4
mov dword [esp], ebx
call dword [0x5bcb68]
sub esp, 0xc
cmp eax, 4
je 0x421b80
mov edx, 0x5201
mov word [eax - 4], dx
cmp eax, 2
je 0x41ff8f
mov byte [eax - 2], 0
jmp 0x41ff8f
mov dword [esp + 8], 4
mov dword [esp + 4], 4
mov dword [esp], ebx
call dword [0x5bcb68]
sub esp, 0xc
cmp eax, 4
je 0x421bbc
mov ecx, 0xe00
mov word [eax - 4], cx
cmp eax, 2
je 0x41ff1f
mov byte [eax - 2], 0
jmp 0x41ff1f
mov dword [esp + 8], 4
mov dword [esp + 4], 4
mov dword [esp], ebx
call dword [0x5bcb68]
sub esp, 0xc
cmp eax, 4
je 0x421bf8
mov esi, 0xd00
mov word [eax - 4], si
cmp eax, 2
je 0x41feaf
mov byte [eax - 2], 0
jmp 0x41feaf
mov dword [esp + 8], 4
mov dword [esp + 4], 4
mov dword [esp], ebx
call dword [0x5bcb68]
sub esp, 0xc
cmp eax, 4
je 0x421c34
mov edx, 0xb00
mov word [eax - 4], dx
cmp eax, 2
je 0x41fe1f
mov byte [eax - 2], 0
jmp 0x41fe1f
mov dword [esp + 8], 4
mov dword [esp + 4], 4
mov dword [esp], ebx
call dword [0x5bcb68]
sub esp, 0xc
cmp eax, 4
je 0x421c70
mov edx, 0x300
mov word [eax - 4], dx
cmp eax, 2
je 0x41fcef
mov byte [eax - 2], 0
jmp 0x41fcef
mov dword [esp + 8], 4
mov dword [esp + 4], 4
mov dword [esp], ebx
call dword [0x5bcb68]
sub esp, 0xc
cmp eax, 4
je 0x421cac
mov esi, 0x2900
mov word [eax - 4], si
cmp eax, 2
je 0x41fc5f
mov byte [eax - 2], 0
jmp 0x41fc5f
mov dword [esp + 8], 4
mov dword [esp + 4], 4
mov dword [esp], ebx
call dword [0x5bcb68]
sub esp, 0xc
cmp eax, 4
je 0x421ce8
mov edx, 0x5800
mov word [eax - 4], dx
cmp eax, 2
je 0x41fb9f
mov byte [eax - 2], 0
jmp 0x41fb9f
mov dword [esp + 8], 4
mov dword [esp + 4], 4
mov dword [esp], ebx
call dword [0x5bcb68]
sub esp, 0xc
cmp eax, 4
je 0x421d24
mov esi, 0x4400
mov word [eax - 4], si
cmp eax, 2
je 0x41fb0f
mov byte [eax - 2], 0
jmp 0x41fb0f
mov dword [esp + 8], 4
mov dword [esp + 4], 4
mov dword [esp], ebx
call dword [0x5bcb68]
sub esp, 0xc
cmp eax, 4
je 0x421d60
mov edx, 0x4200
mov word [eax - 4], dx
cmp eax, 2
je 0x41fa7f
mov byte [eax - 2], 0
jmp 0x41fa7f
mov dword [esp + 8], 4
mov dword [esp + 4], 4
mov dword [esp], ebx
call dword [0x5bcb68]
sub esp, 0xc
cmp eax, 4
je 0x421d9c
mov edx, 0x3e00
mov word [eax - 4], dx
cmp eax, 2
je 0x41f9bf
mov byte [eax - 2], 0
jmp 0x41f9bf
mov dword [esp + 8], 4
mov dword [esp + 4], 4
mov dword [esp], ebx
call dword [0x5bcb68]
sub esp, 0xc
cmp eax, 4
je 0x421dd8
mov edx, 0x100
mov word [eax - 4], dx
cmp eax, 2
je 0x41f8b1
mov byte [eax - 2], 0
jmp 0x41f8b1
mov dword [esp + 8], 4
mov dword [esp + 4], 4
mov dword [esp], ebx
call dword [0x5bcb68]
sub esp, 0xc
cmp eax, 4
je 0x421e14
mov ecx, 0x3d00
mov word [eax - 4], cx
cmp eax, 2
je 0x41f951
mov byte [eax - 2], 0
jmp 0x41f951
mov ecx, 0x5bb5e4
call fcn.00425200
jmp 0x41f82d
mov ecx, dword [0x5bb5e4]
mov dword [esp], 4
call dword [0x5bcb70]
sub esp, 4
jmp 0x41f81d