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

Disassembly:
push ebx
push edi
push esi
sub esp, 0x5b4
mov eax, 0x218f1e1a
mov cx, word [0x4a4a1c]
movsx edx, cx
or edx, 0xc4b9f9f3
cmp eax, edx
jl 0x42de15
mov eax, dword [0x4a0d7c]
xor eax, 0xe968cd9
mov dword [0x4a0d7c], eax
lea ecx, [esp + 0x574]
call fcn.00435ae0
mov ecx, dword [0x49d430]
mov edx, ecx
inc edx
mov dword [0x49d430], edx
add ecx, 0x16a3d089
and ecx, 0xf9fa084e
mov edx, dword [0x49d358]
imul edx, ecx
mov dword [0x49d358], edx
mov si, word [0x4a433e]
movsx ecx, si
sar ecx, 5
or ecx, 0xe305eaf5
cmp ecx, 0x8bd61dac
mov dword [esp + 0x118], eax
je 0x42dea9
mov eax, 0x745ed38
mov ecx, dword [0x4990b0]
dec ecx
mov dword [0x4990b0], ecx
sub eax, ecx
or eax, 0x24a4c9c2
cmp eax, 0x7eba3073
jl 0x42dea4
mov eax, dword [0x49a6cc]
and eax, 0x19c37d87
mov dword [0x49a6cc], eax
jmp 0x42deb3
mov dword [0x49dee0], 0xdd9ac681
mov eax, 0x75d8ca70
mov ecx, dword [0x49dd1c]
add ecx, 0xd730f04d
or ecx, 0x5b3e
mov dx, cx
mov word [0x4a151e], dx
mov ecx, dword [0x49a364]
add ecx, 0xda361b68
mov dword [0x49a364], ecx
mov dword [esp + 0x11c], 0
mov dx, word [0x4a42e6]
mov cx, dx
or ecx, 0x437b
mov dx, cx
mov word [0x4a42e6], dx
mov dword [0x4a58a4], 0x94
mov dx, word [0x4a2f8e]
movsx ecx, dx
xor ecx, 0x294599ae
cmp eax, ecx
jge 0x42df3d
mov eax, dword [0x49bb90]
imul eax, eax, 0xf17098b
mov dword [0x49bb90], eax
mov eax, dword [0x498680]
mov ecx, esp
mov dword [ecx], 0x4a58a4
call eax
sub esp, 4
mov ecx, dword [0x498834]
imul ecx, ecx, 0x4cd4e9fa
mov edx, dword [0x4a03a4]
and edx, ecx
mov dword [0x4a03a4], edx
mov dword [esp + 0x114], eax
call fcn.00405750
mov dword [0x4a61d0], eax
mov si, word [0x4a2896]
mov ax, si
add eax, 0x760485b0
mov si, ax
mov word [0x4a2896], si
call fcn.00444110
mov dword [0x4a61d4], eax
mov eax, dword [0x49e418]
dec eax
mov dword [0x49e418], eax
xor eax, 0x9da2480e
mov dword [0x49bdf4], eax
mov eax, dword [0x4a61d0]
cmp eax, 0
je 0x42e1e3
mov eax, dword [0x49a88c]
xor eax, 0xf5b7ad99
mov dword [0x49a88c], eax
mov eax, esp
lea ecx, [esp + 0x12e]
mov dword [eax], ecx
call fcn.00442080
mov dword [esp + 0x128], eax
mov eax, dword [0x49abcc]
or eax, 0x2932e067
cmp eax, 0xf2d9e93e
je 0x42e00a
mov eax, dword [0x49abc8]
xor eax, 0x98efdc23
mov dword [0x49abc8], eax
mov eax, 0xbf9fd6b7
mov ecx, dword [esp + 0x128]
mov byte [esp + ecx + 0x12e], 0x5c
mov ecx, dword [0x499c2c]
add ecx, 0x373bf586
or ecx, 0x7d7d44d3
mov edx, dword [0x49fbd0]
and edx, ecx
mov dword [0x49fbd0], edx
mov ecx, dword [esp + 0x128]
inc ecx
mov dword [esp + 0x128], ecx
mov ecx, dword [0x49bb34]
dec ecx
mov dword [0x49bb34], ecx
mov si, word [0x4a4f8c]
mov dx, si
xor edx, ecx
mov si, dx
mov word [0x4a4f8c], si
mov ecx, dword [esp + 0x128]
mov byte [esp + ecx + 0x12e], 0
mov ecx, dword [0x49ea1c]
xor ecx, 0xffffffff
xor ecx, 0xe47badd0
xor ecx, 0x7497125b
cmp eax, ecx
jne 0x42e0b4
mov ax, word [0x4a2806]
mov cx, ax
xor ecx, 0xf8dc
mov ax, cx
mov word [0x4a2806], ax
mov eax, dword [0x4a6210]
mov ecx, esp
mov dword [ecx + 4], eax
lea eax, [esp + 0x12e]
mov dword [ecx], eax
mov dword [esp + 0x110], eax
call fcn.00454b00
mov ecx, dword [0x49dcf0]
and ecx, 0xbd95bf7d
mov dword [0x49dcf0], ecx
mov ecx, dword [0x4986c8]
mov edx, esp
mov esi, dword [esp + 0x110]
mov dword [edx], esi
mov dword [edx + 4], 0
mov dword [esp + 0x10c], eax
call ecx
sub esp, 8
mov ecx, dword [0x49be4c]
not ecx
imul ecx, ecx, 0xc70fd2be
mov edx, dword [0x49a0c4]
and edx, ecx
mov dword [0x49a0c4], edx
mov ecx, esp
mov dword [ecx + 4], 0x1f
mov dword [ecx], 0x3b14
mov dword [esp + 0x108], eax
call fcn.0042bee0
mov dword [esp + 0x5b0], eax
mov eax, dword [0x498e6c]
imul eax, eax, 0x5eccbb9f
mov ecx, 0xbf52b023
sub ecx, eax
mov di, word [0x4a3af8]
mov ax, di
imul eax, ecx
mov di, ax
mov word [0x4a3af8], di
mov eax, dword [esp + 0x5b0]
mov ecx, esp
mov dword [ecx + 4], eax
mov eax, dword [esp + 0x110]
mov dword [ecx], eax
call fcn.00454b00
mov ecx, dword [0x49c3c8]
imul ecx, ecx, 0x3837536f
mov dword [0x49c3c8], ecx
mov ecx, dword [esp + 0x5b0]
mov edx, esp
mov dword [edx + 4], ecx
mov dword [edx], 0x1f
mov dword [esp + 0x104], eax
call fcn.00443120
mov eax, dword [0x49a50c]
mov ecx, dword [0x49a194]
xor eax, ecx
mov di, word [0x4a42e2]
mov cx, di
imul ecx, eax
mov di, cx
mov word [0x4a42e2], di
jmp 0x42e209
mov eax, dword [0x49a07c]
add eax, 0xfd0fc114
mov dword [0x49a07c], eax
mov byte [esp + 0x12e], 0
mov eax, dword [0x49f6e0]
add eax, 0x48e83392
mov dword [0x49f6e0], eax
mov eax, 0xf8f33981
mov ecx, dword [0x49a38c]
dec ecx
mov dword [0x49a38c], ecx
imul ecx, ecx, 0xa00cc5c0
and ecx, 0x843b5780
mov edx, dword [0x499270]
or edx, ecx
mov dword [0x499270], edx
mov ecx, esp
mov dword [ecx + 4], 0x1f
mov dword [ecx], 0x8b0d
mov dword [esp + 0x100], eax
call fcn.0042bee0
mov dword [esp + 0x5ac], eax
mov eax, dword [0x4a1064]
mov si, word [0x4a252c]
movsx ecx, si
imul eax, ecx
mov ecx, dword [esp + 0x100]
cmp ecx, eax
jg 0x42e2a7
mov ax, word [0x4a2dd4]
mov cx, ax
inc ecx
mov ax, cx
mov word [0x4a2dd4], ax
movsx ecx, ax
imul ecx, ecx, 0x4bf4a67e
mov edx, dword [0x498d38]
lea ecx, [ecx + edx - 0xccd3660]
mov dword [0x498d38], ecx
mov eax, dword [esp + 0x5ac]
mov ecx, esp
mov dword [ecx], eax
lea ecx, [esp + 0x574]
call fcn.004471f0
sub esp, 4
mov ecx, dword [0x4a10e4]
xor ecx, 0x80210000
mov dword [0x4a10e4], ecx
mov ecx, dword [esp + 0x5ac]
mov edx, esp
mov dword [edx + 4], ecx
mov dword [edx], 0x1f
mov dword [esp + 0xfc], eax
call fcn.00443120
mov si, word [0x4a14a2]
mov ax, si
dec eax
mov di, ax
mov word [0x4a14a2], di
movsx eax, si
or eax, 0x30338e53
mov ecx, dword [0x49ad68]
shl ecx, 1
cmp eax, ecx
jle 0x42e32e
mov eax, dword [0x49d95c]
or eax, 0xfffe3fff
mov dword [0x49d95c], eax
lea eax, [esp + 0x574]
lea ecx, [esp + 0x12e]
mov dword [esp + 0xf8], ecx
mov ecx, eax
call fcn.00432fe0
lea ecx, [esp + 0x574]
mov dword [esp + 0xf4], eax
call fcn.0042be00
mov ecx, 0x861d9fa
mov dword [esp], eax
mov eax, dword [esp + 0xf4]
mov dword [esp + 4], eax
mov eax, dword [esp + 0xf8]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0x861d9fa
mov dword [esp + 0xf0], ecx
call fcn.00430020
cmp eax, 0
je 0x42e47a
mov ax, word [0x4a1b36]
movsx ecx, ax
not ecx
add ecx, 0x4c7f61
xor ecx, 0x2da39681
mov edx, dword [0x49b994]
and edx, ecx
mov dword [0x49b994], edx
mov dword [esp + 0x11c], 1
mov ecx, dword [0x49f270]
add ecx, 0x4993d2ee
mov dword [0x49f270], ecx
mov ecx, dword [0x498654]
mov edx, esp
lea esi, [esp + 0x12e]
mov dword [edx], esi
mov dword [esp + 0xec], esi
call ecx
sub esp, 4
mov di, word [0x4a2274]
mov cx, di
inc ecx
mov bx, cx
mov word [0x4a2274], bx
movsx ecx, di
add ecx, 0xf23ef37e
mov edx, dword [0x49cb84]
or edx, ecx
mov dword [0x49cb84], edx
mov ecx, dword [esp + 0x128]
mov byte [esp + ecx + 0x12e], 0
mov ecx, dword [0x49a648]
xor ecx, 0xcd089828
mov dword [0x49a648], ecx
mov ecx, dword [0x4986cc]
mov edx, esp
mov esi, dword [esp + 0xec]
mov dword [edx], esi
mov dword [esp + 0xe8], eax
call ecx
sub esp, 4
mov ecx, dword [0x49dc98]
imul ecx, ecx, 0x7a36167f
mov dword [0x49dc98], ecx
mov dword [esp + 0xe4], eax
mov eax, 0xe4848ba8
mov cx, word [0x4a526e]
mov dx, cx
xor edx, 0xc30b
mov cx, dx
mov word [0x4a526e], cx
mov edx, esp
lea esi, [esp + 0x12e]
mov dword [edx], esi
mov dword [esp + 0xe0], eax
call fcn.00442080
mov edx, dword [0x49e7a0]
and edx, 0xcb30940
mov esi, dword [esp + 0xe0]
cmp esi, edx
mov dword [esp + 0xdc], eax
jl 0x42e4f8
mov eax, dword [0x49e890]
dec eax
mov dword [0x49e890], eax
mov cx, word [0x4a437e]
mov dx, cx
or edx, eax
mov cx, dx
mov word [0x4a437e], cx
jmp 0x42e531
mov eax, 0xf9141503
mov ecx, dword [0x4996b8]
mov edx, ecx
inc edx
mov dword [0x4996b8], edx
cmp eax, ecx
jle 0x42e52c
mov eax, dword [0x49fdb8]
mov ecx, 0xe3f576c7
sub ecx, eax
mov eax, dword [0x498a8c]
or eax, ecx
mov dword [0x498a8c], eax
jmp 0x42e531
mov eax, 0xcc76e161
mov byte [esp + 0x131], 0
mov ecx, dword [0x4a066c]
cmp eax, ecx
jg 0x42e565
mov eax, dword [0x49fcd4]
imul eax, eax, 0x695bca08
mov ecx, dword [0x49d9e0]
sub ecx, eax
mov dword [0x49d9e0], ecx
mov eax, 0x735b1636
mov ecx, dword [0x4a6210]
mov edx, esp
mov dword [edx + 4], ecx
lea ecx, [esp + 0x12e]
mov dword [edx], ecx
mov dword [esp + 0xd8], eax
mov dword [esp + 0xd4], ecx
call fcn.00454b00
mov dword [0x49ee7c], 0xb267ac4d
mov ecx, dword [0x4986c8]
mov edx, esp
mov esi, dword [esp + 0xd4]
mov dword [edx], esi
mov dword [edx + 4], 0
mov dword [esp + 0xd0], eax
call ecx
sub esp, 8
mov ecx, dword [0x4a0270]
xor ecx, 0xffffffff
imul ecx, ecx, 0x8d4a694a
xor ecx, 0xd6091ffb
mov edx, dword [esp + 0xd8]
cmp edx, ecx
mov dword [esp + 0xcc], eax
jl 0x42e601
mov eax, dword [0x499e94]
not eax
imul eax, eax, 0xf4961898
add eax, 0xb348930b
mov dword [0x49ad80], eax
mov eax, esp
lea ecx, [esp + 0x12e]
mov dword [eax + 4], ecx
mov dword [eax], 0x4a5aa8
call fcn.00454af0
mov ecx, dword [0x4a08e4]
xor ecx, 0xffffffff
imul ecx, ecx, 0x66a12f5d
or ecx, 0x5af4c58e
cmp ecx, 0x1abbe3e
mov dword [esp + 0xc8], eax
jg 0x42e65d
mov ax, word [0x4a2f82]
mov cx, ax
add ecx, 0x6bded813
mov ax, cx
mov word [0x4a2f82], ax
jmp 0x42e667
mov dword [0x49c2bc], 0xe893df11
cmp dword [esp + 0x11c], 0
jne 0x42e6a8
mov eax, dword [0x49b19c]
imul eax, eax, 0xa19d25d2
mov dword [0x49b19c], eax
mov dword [0x4a61cc], 0
mov cx, word [0x4a1eb8]
mov ax, cx
add eax, 0xa7527358
mov cx, ax
mov word [0x4a1eb8], cx
mov eax, 0x643e57b4
mov ecx, dword [0x49fe90]
add ecx, 0xe6bfd4cf
mov dword [0x49fe90], ecx
mov ecx, esp
lea edx, [esp + 0x12e]
mov dword [ecx], edx
mov dword [esp + 0xc4], eax
mov dword [esp + 0xc0], edx
call fcn.00428190
mov dword [esp + 0x128], eax
mov dword [0x4987c8], 0x5c8471e7
mov eax, dword [0x4986c8]
mov ecx, esp
mov edx, dword [esp + 0xc0]
mov dword [ecx], edx
mov dword [ecx + 4], 0
call eax
sub esp, 8
mov ecx, dword [0x498f38]
or ecx, 0x68f5
mov si, word [0x4a3eda]
mov dx, si
imul edx, ecx
mov si, dx
mov word [0x4a3eda], si
mov ecx, esp
mov dword [ecx + 4], 0x1f
mov dword [ecx], 0x3b14
mov dword [esp + 0xbc], eax
call fcn.0042bee0
mov dword [esp + 0x5a8], eax
mov eax, dword [0x49da68]
xor eax, 0x2d4f7bb7
mov dword [0x49da68], eax
mov eax, dword [esp + 0x5a8]
mov ecx, esp
mov dword [ecx + 4], eax
mov eax, dword [esp + 0xc0]
mov dword [ecx], eax
call fcn.00454b00
mov ecx, dword [0x499960]
xor ecx, 0xf7525b7a
mov dword [0x499960], ecx
mov ecx, esp
mov dword [ecx + 4], 0x1f
mov dword [ecx], 0x8b0d
mov dword [esp + 0xb8], eax
call fcn.0042bee0
mov dword [esp + 0x5a4], eax
mov eax, dword [0x49f4dc]
imul eax, eax, 0xb8fe5e3d
mov ecx, dword [0x49a2dc]
dec ecx
mov dword [0x49a2dc], ecx
add eax, ecx
mov ecx, dword [esp + 0xc4]
cmp ecx, eax
jl 0x42e7ed
mov ax, word [0x4a3b86]
mov cx, ax
or ecx, 0x32e3
mov ax, cx
mov word [0x4a3b86], ax
lea eax, [esp + 0x574]
lea ecx, [esp + 0x12e]
mov edx, dword [esp + 0x5a8]
mov esi, esp
mov dword [esi + 4], edx
mov dword [esi], 0x1f
mov dword [esp + 0xb4], eax
mov dword [esp + 0xb0], ecx
call fcn.00443120
mov di, word [0x4a4760]
movsx eax, di
mov ecx, dword [0x499ae4]
imul eax, ecx
imul eax, eax, 0xd515d367
mov dword [0x499ae4], eax
mov eax, dword [esp + 0x5a4]
mov ecx, esp
mov dword [ecx], eax
lea ecx, [esp + 0x574]
call fcn.004471f0
sub esp, 4
mov di, word [0x4a1876]
mov cx, di
add ecx, 0x33421786
mov di, cx
mov word [0x4a1876], di
mov ecx, dword [esp + 0x5a4]
mov edx, esp
mov dword [edx + 4], ecx
mov dword [edx], 0x1f
mov dword [esp + 0xac], eax
call fcn.00443120
mov eax, dword [0x49ab44]
mov di, word [0x4a1e7a]
mov cx, di
sub ecx, eax
mov di, cx
mov word [0x4a1e7a], di
mov eax, dword [esp + 0xb4]
mov ecx, eax
call fcn.00432fe0
lea ecx, [esp + 0x574]
mov dword [esp + 0xa8], eax
call fcn.0042be00
mov ecx, 0x861d9fa
mov dword [esp], eax
mov eax, dword [esp + 0xa8]
mov dword [esp + 4], eax
mov eax, dword [esp + 0xb0]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0x861d9fa
mov dword [esp + 0xa4], ecx
call fcn.00430020
cmp eax, 0
jne 0x42f618
mov ax, word [0x4a3f14]
mov cx, ax
dec ecx
mov ax, cx
mov word [0x4a3f14], ax
movsx ecx, ax
mov ax, word [0x4a3354]
movsx edx, ax
shl edx, 3
or ecx, edx
mov edx, dword [0x49e160]
mov ax, word [0x4a4bec]
movsx esi, ax
sub esi, 0xe0de726e
and edx, esi
cmp ecx, edx
jle 0x42e95e
mov eax, dword [0x4a1050]
or eax, 0x28ad546d
mov dword [0x4a1050], eax
jmp 0x42e96d
mov eax, dword [0x49bafc]
add eax, 0xfbcf30f
mov dword [0x49bafc], eax
cmp dword [0x4a58a8], 6
jb 0x42ea2f
mov eax, dword [0x4a0584]
imul eax, eax, 0x16512f03
mov dword [0x4a0584], eax
mov eax, esp
mov dword [eax + 4], 0x12
mov dword [eax], 0x19da
call fcn.0042bee0
mov dword [esp + 0x5a0], eax
mov cx, word [0x4a5446]
mov word [0x4a5446], cx
mov eax, dword [esp + 0x5a0]
mov edx, esp
mov dword [edx + 4], eax
lea eax, [esp + 0x12e]
mov dword [edx], eax
mov dword [edx + 8], 0x4a5938
call fcn.00454a43
mov edx, dword [0x49d258]
mov esi, edx
inc esi
mov dword [0x49d258], esi
add edx, 0x2fd8ccf0
xor edx, 0x1a2ab7d1
mov esi, dword [0x4a00c8]
and esi, edx
mov dword [0x4a00c8], esi
mov edx, dword [esp + 0x5a0]
mov esi, esp
mov dword [esi + 4], edx
mov dword [esi], 0x12
mov dword [esp + 0xa0], eax
call fcn.00443120
mov eax, dword [0x49a560]
xor eax, 0xd6254901
mov dword [0x49a560], eax
jmp 0x42eb36
mov eax, 0xec08088c
mov ecx, dword [0x49c458]
inc ecx
mov dword [0x49c458], ecx
and ecx, 0x49efafe8
cmp eax, ecx
je 0x42ea5e
mov eax, dword [0x49f1a8]
and eax, 0xdb938181
mov dword [0x49f1a8], eax
mov eax, 0xb90c00e0
mov ecx, esp
mov dword [ecx + 4], 0x24
mov dword [ecx], 0x1a09
mov dword [esp + 0x9c], eax
call fcn.0042bee0
mov dword [esp + 0x59c], eax
mov eax, dword [0x49d688]
xor eax, 0x6acbf63b
mov dword [0x49d688], eax
mov eax, dword [esp + 0x59c]
mov ecx, esp
mov dword [ecx + 4], eax
lea eax, [esp + 0x12e]
mov dword [ecx], eax
mov dword [ecx + 8], 0x4a5938
call fcn.00454a43
mov dx, word [0x4a4130]
mov cx, dx
inc ecx
mov si, cx
mov word [0x4a4130], si
movsx ecx, dx
add ecx, 0xb9a201c4
mov edi, dword [0x49f2c8]
imul edi, ecx
mov dword [0x49f2c8], edi
mov ecx, dword [esp + 0x59c]
mov edi, esp
mov dword [edi + 4], ecx
mov dword [edi], 0x24
mov dword [esp + 0x98], eax
call fcn.00443120
mov eax, dword [0x49df18]
mov ecx, eax
dec ecx
mov dword [0x49df18], ecx
and eax, 0x6fea3d1c
mov ecx, dword [esp + 0x9c]
cmp ecx, eax
jle 0x42eb31
mov eax, dword [0x4a10c0]
or eax, 0xa9bb4b5c
mov dword [0x4a10c0], eax
jmp 0x42eb36
mov eax, 0x6cb6a652
mov ecx, dword [0x49f658]
add ecx, 0xa839e43f
cmp eax, ecx
jg 0x42eb6e
mov eax, dword [0x49bdf8]
not eax
add eax, 0xce3a4d96
and eax, 0xf867915
mov ecx, dword [0x49fa28]
sub ecx, eax
mov dword [0x49fa28], ecx
mov byte [esp + 0x573], 0
mov eax, dword [0x49b584]
imul eax, eax, 0x6b8e08ed
mov ecx, dword [0x4a0870]
sub ecx, eax
mov dword [0x4a0870], ecx
mov eax, dword [0x4a6210]
mov ecx, esp
mov dword [ecx + 4], eax
lea eax, [esp + 0x12e]
mov dword [ecx], eax
mov dword [esp + 0x94], eax
call fcn.00454b00
mov ecx, dword [0x49e2b4]
inc ecx
mov dword [0x49e2b4], ecx
imul ecx, ecx, 0xbdb7e4a4
add ecx, 0x99b14856
mov edx, dword [0x499eec]
or edx, ecx
mov dword [0x499eec], edx
mov ecx, dword [0x4986c8]
mov edx, esp
mov esi, dword [esp + 0x94]
mov dword [edx], esi
mov dword [edx + 4], 0
mov dword [esp + 0x90], eax
call ecx
sub esp, 8
mov di, word [0x4a40f6]
mov cx, di
add ecx, 0x195caee
mov di, cx
mov word [0x4a40f6], di
mov ecx, esp
mov edx, dword [esp + 0x94]
mov dword [ecx + 4], edx
mov dword [ecx], 0x4a5aa8
mov dword [esp + 0x8c], eax
call fcn.00454af0
mov di, word [0x4a2fe8]
mov cx, di
xor ecx, 0xc93c
mov di, cx
mov word [0x4a2fe8], di
mov ecx, esp
mov edx, dword [esp + 0x94]
mov dword [ecx], edx
mov dword [esp + 0x88], eax
call fcn.00428190
mov dword [esp + 0x128], eax
mov eax, dword [0x498f98]
mov di, word [0x4a22dc]
movsx ecx, di
sub eax, ecx
cmp eax, 0x2ef7511
jl 0x42ecaa
mov ax, word [0x4a13d8]
mov cx, ax
inc ecx
mov dx, cx
mov word [0x4a13d8], dx
movsx ecx, ax
mov esi, dword [0x49ca74]
sub esi, ecx
mov dword [0x49ca74], esi
mov eax, dword [0x4986c8]
mov ecx, esp
lea edx, [esp + 0x12e]
mov dword [ecx], edx
mov dword [ecx + 4], 0
call eax
sub esp, 8
mov ecx, dword [0x49db08]
and ecx, 0xfefaffe6
mov dword [0x49db08], ecx
mov ecx, esp
mov dword [ecx + 4], 0x1f
mov dword [ecx], 0x3b14
mov dword [esp + 0x84], eax
call fcn.0042bee0
mov dword [esp + 0x598], eax
mov eax, dword [0x49c064]
sar eax, 3
add eax, 0xa98309ed
mov ecx, dword [0x49ca60]
mov edx, ecx
dec edx
mov dword [0x49ca60], edx
add ecx, 0x7ad6c126
xor ecx, 0xe9f2ea3c
cmp eax, ecx
jne 0x42ed42
mov ax, word [0x4a3d8a]
mov cx, ax
add ecx, 0x61f4d899
mov ax, cx
mov word [0x4a3d8a], ax
mov eax, 0x90bdb654
mov ecx, dword [esp + 0x598]
mov edx, esp
mov dword [edx + 4], ecx
lea ecx, [esp + 0x12e]
mov dword [edx], ecx
mov dword [esp + 0x80], eax
call fcn.00454b00
mov ecx, dword [0x49aaec]
mov edx, ecx
inc edx
mov dword [0x49aaec], edx
mov edx, dword [0x49ca70]
shl edx, 6
add ecx, edx
mov edx, dword [esp + 0x80]
cmp edx, ecx
mov dword [esp + 0x7c], eax
jle 0x42eda9
mov eax, dword [0x49bf80]
add eax, 0xf7e3313b
mov dword [0x49bf80], eax
jmp 0x42edb9
mov eax, dword [0x4990f0]
imul eax, eax, 0x9c3e66e9
mov dword [0x4990f0], eax
mov eax, 0xf0a1b195
mov ecx, esp
mov dword [ecx + 4], 0x1f
mov dword [ecx], 0x8b0d
mov dword [esp + 0x78], eax
call fcn.0042bee0
mov dword [esp + 0x594], eax
mov dx, word [0x4a1dca]
movsx eax, dx
mov ecx, dword [0x49ff9c]
mov esi, dword [esp + 0x78]
sub esi, ecx
and eax, esi
cmp eax, 0xe121b764
jle 0x42ee30
mov eax, dword [0x49f97c]
mov ecx, eax
dec ecx
mov dword [0x49f97c], ecx
mov dx, word [0x4a314a]
movsx ecx, dx
sar ecx, 6
xor eax, ecx
mov ecx, dword [0x49fe44]
add ecx, eax
mov dword [0x49fe44], ecx
jmp 0x42ee3f
mov eax, dword [0x499a24]
add eax, 0x42022417
mov dword [0x499a24], eax
mov eax, 0x361a9252
mov ecx, dword [esp + 0x598]
mov edx, esp
mov dword [edx + 4], ecx
mov dword [edx], 0x1f
mov dword [esp + 0x74], eax
call fcn.00443120
mov si, word [0x4a413c]
mov ax, si
dec eax
mov di, ax
mov word [0x4a413c], di
movsx eax, si
xor eax, 0x100edd55
mov ecx, dword [esp + 0x74]
cmp ecx, eax
jg 0x42eed3
mov ax, word [0x4a31d4]
mov cx, ax
dec ecx
mov dx, cx
mov word [0x4a31d4], dx
movsx ecx, ax
sub ecx, 0x26e12c87
cmp ecx, 0x64dc3173
jle 0x42eece
mov ax, word [0x4a4482]
movsx ecx, ax
add ecx, 0x96c329c
mov edx, dword [0x49f97c]
and edx, ecx
mov dword [0x49f97c], edx
jmp 0x42eef6
mov ax, word [0x4a3e2a]
movsx ecx, ax
add ecx, 0x6d28c190
xor ecx, 0x6f2fab11
mov edx, dword [0x49c524]
sub edx, ecx
mov dword [0x49c524], edx
lea eax, [esp + 0x574]
lea ecx, [esp + 0x12e]
mov edx, dword [esp + 0x594]
mov esi, esp
mov dword [esi], edx
lea edx, [esp + 0x574]
mov dword [esp + 0x70], ecx
mov ecx, edx
mov dword [esp + 0x6c], eax
call fcn.004471f0
sub esp, 4
mov ecx, dword [0x4a0f48]
xor ecx, 0x9024
or ecx, 0xa88
mov di, word [0x4a2872]
mov dx, di
xor edx, ecx
mov di, dx
mov word [0x4a2872], di
mov ecx, dword [esp + 0x594]
mov edx, esp
mov dword [edx + 4], ecx
mov dword [edx], 0x1f
mov dword [esp + 0x68], eax
call fcn.00443120
mov eax, dword [0x49ef2c]
add eax, 0x469fbd0
mov dword [0x49ef2c], eax
mov eax, dword [esp + 0x6c]
mov ecx, eax
call fcn.00432fe0
lea ecx, [esp + 0x574]
mov dword [esp + 0x64], eax
call fcn.0042be00
mov ecx, 0x861d9fa
mov dword [esp], eax
mov eax, dword [esp + 0x64]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x70]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0x861d9fa
mov dword [esp + 0x60], ecx
call fcn.00430020
cmp eax, 0
jne 0x42f5f1
mov eax, 0xf0599d6c
mov ecx, dword [0x49b618]
shl ecx, 6
or ecx, 0xfa6bfd9e
or ecx, 0x4e9382db
cmp eax, ecx
je 0x42f011
mov eax, dword [0x499154]
not eax
mov ecx, dword [0x49ed2c]
inc ecx
and eax, ecx
mov dword [0x49ed2c], ecx
mov ecx, dword [0x4a0ccc]
and eax, ecx
and eax, 0xc27078b7
mov dword [0x4a0ccc], eax
mov eax, dword [0x498670]
mov ecx, esp
lea edx, [esp + 0x12e]
mov dword [ecx + 4], edx
mov dword [ecx], 0x104
call eax
sub esp, 8
mov si, word [0x4a3108]
mov cx, si
dec ecx
mov di, cx
mov word [0x4a3108], di
movsx ecx, si
mov edx, dword [0x49fdac]
imul edx, edx, 0xe0370e8a
mov ebx, dword [0x49a598]
imul edx, ebx
cmp ecx, edx
mov dword [esp + 0x5c], eax
jg 0x42f08e
mov eax, dword [0x49e7dc]
imul eax, eax, 0xa48d33e1
mov ecx, 0xe0161252
sub ecx, eax
mov dx, word [0x4a4df6]
mov ax, dx
xor eax, ecx
mov dx, ax
mov word [0x4a4df6], dx
mov eax, esp
lea ecx, [esp + 0x12e]
mov dword [eax], ecx
call fcn.00451710
mov dword [esp + 0x128], eax
mov dword [0x49f648], 0x71d4709c
mov eax, dword [esp + 0x128]
add eax, 0xfffffffe
mov dword [esp + 0x128], eax
mov eax, dword [0x49af28]
add eax, 0xc906dbd8
mov dword [0x49af28], eax
mov eax, dword [esp + 0x128]
mov dword [esp + 0x124], eax
cmp dword [esp + 0x124], 0
jle 0x42f1f8
mov ax, word [0x4a4cc8]
mov cx, ax
xor ecx, 0xee18
mov ax, cx
mov word [0x4a4cc8], ax
mov ecx, dword [esp + 0x124]
movsx ecx, byte [esp + ecx + 0x12e]
cmp ecx, 0x5c
jne 0x42f1d3
mov eax, 0xd70b5d3c
mov ecx, 0x8f4c3cc9
mov dx, word [0x4a172a]
movsx esi, dx
mov edi, dword [0x49fd24]
sub ecx, edi
xor esi, ecx
cmp eax, esi
jle 0x42f16c
mov ax, word [0x4a465a]
mov cx, ax
dec ecx
mov dx, cx
mov word [0x4a465a], dx
movsx ecx, ax
mov esi, dword [0x49c8c0]
or ecx, esi
or ecx, 0x248df662
mov dword [0x49c8c0], ecx
mov eax, dword [esp + 0x124]
inc eax
mov dword [esp + 0x124], eax
mov eax, dword [0x49c950]
xor eax, 0xff3e604c
mov dword [0x49c950], eax
mov eax, dword [esp + 0x124]
mov byte [esp + eax + 0x12e], 0
mov eax, dword [0x49c070]
add eax, 0xdf8741c7
mov dword [0x49c070], eax
mov eax, dword [esp + 0x124]
mov dword [esp + 0x128], eax
mov eax, dword [0x49aadc]
add eax, 0xc420437e
mov ecx, dword [0x49a560]
or ecx, eax
mov dword [0x49a560], ecx
jmp 0x42f1f8
mov eax, dword [0x4a0dd8]
and eax, 0x3624e19e
mov dword [0x4a0dd8], eax
mov eax, dword [esp + 0x124]
add eax, 0xffffffff
mov dword [esp + 0x124], eax
jmp 0x42f0dd
mov eax, 0x94c36675
mov ecx, dword [0x498e24]
mov edx, dword [0x49ed5c]
xor ecx, edx
xor ecx, 0x2620b2bd
mov dword [0x49ed5c], ecx
mov ecx, esp
lea edx, [esp + 0x12e]
mov dword [ecx + 4], edx
mov dword [ecx], 0x4a5aa8
mov dword [esp + 0x58], eax
mov dword [esp + 0x54], edx
call fcn.00454af0
mov ecx, dword [0x4998b4]
shl ecx, 3
xor ecx, 0x35e95a52
mov edx, dword [0x49d99c]
and edx, ecx
mov dword [0x49d99c], edx
mov ecx, esp
mov edx, dword [esp + 0x54]
mov dword [ecx], edx
mov dword [esp + 0x50], eax
call fcn.00428190
mov dword [esp + 0x128], eax
mov eax, dword [0x49ce80]
or eax, 0x737bc3d3
mov dword [0x49ce80], eax
mov eax, dword [0x4986c8]
mov ecx, esp
mov edx, dword [esp + 0x54]
mov dword [ecx], edx
mov dword [ecx + 4], 0
call eax
sub esp, 8
mov si, word [0x4a2774]
movsx ecx, si
mov edx, dword [0x49f0a0]
imul edx, ecx
mov dword [0x49f0a0], edx
mov ecx, esp
mov dword [ecx + 4], 0x1f
mov dword [ecx], 0x3b14
mov dword [esp + 0x4c], eax
call fcn.0042bee0
mov dword [esp + 0x590], eax
mov eax, dword [0x49b8d0]
imul eax, eax, 0x9cdc55e
xor eax, 0x11c75fb0
mov ecx, dword [0x49a710]
and ecx, eax
mov dword [0x49a710], ecx
mov eax, dword [esp + 0x590]
mov ecx, esp
mov dword [ecx + 4], eax
mov eax, dword [esp + 0x54]
mov dword [ecx], eax
call fcn.00454b00
mov ecx, dword [0x49d04c]
and ecx, 0x623247c3
mov dword [0x49d04c], ecx
mov ecx, esp
mov dword [ecx + 4], 0x1f
mov dword [ecx], 0x8b0d
mov dword [esp + 0x48], eax
call fcn.0042bee0
mov dword [esp + 0x58c], eax
mov si, word [0x4a49a6]
mov ax, si
dec eax
mov si, ax
mov word [0x4a49a6], si
movsx eax, si
or eax, 0x80180228
mov ecx, dword [esp + 0x58]
cmp ecx, eax
jge 0x42f377
mov eax, dword [0x49f224]
add eax, 0xa798cac
or eax, 0x6948661f
mov ecx, dword [0x49e454]
and ecx, eax
mov dword [0x49e454], ecx
mov eax, dword [esp + 0x590]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 0x1f
call fcn.00443120
mov eax, dword [0x49e4f8]
xor eax, 0xffffffff
cmp eax, 0xd1fbd47f
jl 0x42f3b9
mov eax, dword [0x49b454]
mov ecx, dword [0x49d714]
or ecx, eax
mov dword [0x49d714], ecx
jmp 0x42f3d1
mov ax, word [0x4a440e]
mov cx, ax
or ecx, 0x60d0
mov ax, cx
mov word [0x4a440e], ax
mov eax, 0xe2fdb2e3
mov ecx, dword [esp + 0x58c]
mov edx, esp
mov dword [edx], ecx
lea ecx, [esp + 0x574]
mov dword [esp + 0x44], eax
call fcn.004471f0
sub esp, 4
mov ecx, dword [0x49c0bc]
mov edx, ecx
inc edx
mov dword [0x49c0bc], edx
mov edx, dword [esp + 0x44]
cmp edx, ecx
mov dword [esp + 0x40], eax
jle 0x42f423
mov eax, dword [0x49e460]
imul eax, eax, 0x27071e5b
mov dword [0x49e460], eax
lea eax, [esp + 0x574]
lea ecx, [esp + 0x12e]
mov edx, dword [esp + 0x58c]
mov esi, esp
mov dword [esi + 4], edx
mov dword [esi], 0x1f
mov dword [esp + 0x3c], eax
mov dword [esp + 0x38], ecx
call fcn.00443120
mov eax, dword [0x49abb8]
add eax, 0x848068cd
mov dword [0x49abb8], eax
mov eax, dword [esp + 0x3c]
mov ecx, eax
call fcn.00432fe0
lea ecx, [esp + 0x574]
mov dword [esp + 0x34], eax
call fcn.0042be00
mov ecx, 0x861d9fa
mov dword [esp], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x38]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0x861d9fa
mov dword [esp + 0x30], ecx
call fcn.00430020
cmp eax, 0
jne 0x42f5e2
mov eax, 0xb06c9ab7
mov ecx, dword [0x49dd1c]
mov edx, 0xb37018a8
sub edx, ecx
mov dword [0x49e7c8], edx
mov ecx, dword [0x498670]
mov edx, esp
lea esi, [esp + 0x12e]
mov dword [edx + 4], esi
mov dword [edx], 0x104
mov dword [esp + 0x2c], eax
mov dword [esp + 0x28], esi
call ecx
sub esp, 8
mov ecx, dword [0x498f24]
mov edx, ecx
dec edx
mov dword [0x498f24], edx
xor ecx, 0xb4f57e4b
mov edx, dword [0x49ae88]
and edx, ecx
mov dword [0x49ae88], edx
mov ecx, esp
mov edx, dword [esp + 0x28]
mov dword [ecx + 4], edx
mov dword [ecx], 0x4a5aa8
mov dword [esp + 0x24], eax
call fcn.00454af0
mov ecx, dword [0x499bf8]
and ecx, 0xb8a7
mov di, word [0x4a16ec]
mov dx, di
xor edx, ecx
mov di, dx
mov word [0x4a16ec], di
mov ecx, esp
mov dword [ecx + 4], 0x1f
mov dword [ecx], 0x3b14
mov dword [esp + 0x20], eax
call fcn.0042bee0
mov dword [esp + 0x588], eax
mov eax, dword [0x49a338]
and eax, 0x10339732
mov dword [0x49a338], eax
mov eax, dword [esp + 0x588]
mov ecx, esp
mov dword [ecx + 4], eax
mov eax, dword [esp + 0x28]
mov dword [ecx], eax
call fcn.00454b00
mov ecx, dword [0x49a928]
and ecx, 0x2b21d062
mov dword [0x49a928], ecx
mov ecx, dword [esp + 0x588]
mov edx, esp
mov dword [edx + 4], ecx
mov dword [edx], 0x1f
mov dword [esp + 0x1c], eax
call fcn.00443120
mov eax, dword [0x499460]
or eax, 0xad646c08
mov ecx, dword [esp + 0x2c]
cmp ecx, eax
jne 0x42f5dd
mov eax, dword [0x49e268]
add eax, 0x6ab5f18f
mov dword [0x49e268], eax
jmp 0x42f5e2
mov eax, dword [0x49a0e4]
and eax, 0x63622c9b
mov dword [0x49a0e4], eax
mov eax, dword [0x49b2f0]
mov ecx, dword [0x49e0d4]
dec ecx
mov dword [0x49e0d4], ecx
xor eax, ecx
or eax, 0x3ba2e0eb
mov ecx, dword [0x4991c0]
add ecx, eax
mov dword [0x4991c0], ecx
mov eax, 0xe7a3bf4f
mov ecx, dword [0x49cee8]
mov edx, ecx
dec edx
mov dword [0x49cee8], edx
mov si, word [0x4a4286]
mov dx, si
inc edx
mov di, dx
mov word [0x4a4286], di
movsx edx, si
imul edx, edx, 0x8a63fff2
sub ecx, edx
cmp eax, ecx
jle 0x42f672
mov eax, dword [0x49c1b4]
add eax, 0xe481a6d8
mov ecx, dword [0x49e590]
imul ecx, eax
mov dword [0x49e590], ecx
jmp 0x42f6a6
mov eax, dword [0x499304]
shr eax, 9
and eax, 0xd962
mov ecx, dword [0x49a6d8]
mov edx, ecx
inc edx
mov dword [0x49a6d8], edx
xor eax, ecx
mov si, word [0x4a4ee8]
mov cx, si
add ecx, eax
mov si, cx
mov word [0x4a4ee8], si
mov eax, 0x7f1c12f7
mov ecx, esp
lea edx, [esp + 0x12e]
mov dword [ecx], edx
mov dword [esp + 0x18], eax
call fcn.00428190
mov si, word [0x4a1d92]
mov cx, si
inc ecx
mov si, cx
mov word [0x4a1d92], si
movsx ecx, si
mov edx, dword [0x49a660]
add ecx, edx
xor ecx, 0x19bb52a8
mov edx, dword [esp + 0x18]
cmp edx, ecx
mov dword [esp + 0x14], eax
jl 0x42f712
mov ax, word [0x4a207a]
mov cx, ax
and ecx, 0x78ae
mov ax, cx
mov word [0x4a207a], ax
jmp 0x42f721
mov eax, dword [0x49e658]
add eax, 0x53a2e291
mov dword [0x49d9ec], eax
mov eax, dword [0x49867c]
mov ecx, esp
lea edx, [esp + 0x12e]
mov dword [ecx], edx
mov dword [ecx + 4], 2
call eax
sub esp, 8
mov ecx, dword [0x4a0e64]
add ecx, 0xa49f62fc
cmp ecx, 0xfafffa3d
mov dword [esp + 0x10], eax
jg 0x42f7a5
mov ax, word [0x4a45f0]
mov cx, ax
inc ecx
mov dx, cx
mov word [0x4a45f0], dx
movsx ecx, ax
sub ecx, 0xc307f245
cmp ecx, 0x90900e04
je 0x42f7a0
mov eax, dword [0x49ae8c]
imul eax, eax, 0x9c5526d6
and eax, 0x2309469e
mov ecx, dword [0x49925c]
sub ecx, eax
mov dword [0x49925c], ecx
jmp 0x42f7a5
mov eax, esp
lea ecx, [esp + 0x12e]
mov dword [eax], ecx
mov dword [eax + 4], 0x446
call fcn.00442fe0
mov eax, dword [0x499a44]
and eax, 0x74bf0f7e
mov dword [0x499a44], eax
lea ecx, [esp + 0x574]
call fcn.00447580
add esp, 0x5b4
pop esi
pop edi
pop ebx
ret